2011-10-01 7 views
1

우리는 모든 푸시 된 참조가 특정 필수 정보를 포함하는 커밋 메시지를 가지고 있는지 확인하기 위해 원격 저장소에 사전 수신 훅이있는 git 워크 플로를 구현하려고합니다. 개발자들에게 편의를 제공하기 위해 지역 명령 체계 개발자가 모든 참조 정보가 푸시 명령에 의해 푸시 될 수 있도록 실행하여 푸시가 후크를 통과하는지 여부를 확인할 수 있도록하고 싶습니다. 또한 filter-branch를 호출하는 새로운 git 명령을 만들거나 누락 된 정보를 채우기 위해 모든 커밋 메시지를 다시 쓰는 다른 명령을 작성하십시오.git push 명령으로 모든 refs 목록을 가져 오는 방법은 무엇입니까?

푸시 명령으로 푸시 될 모든 목록을 가져올 수 있습니까? 예를 들어

, 당신은 자식이 --porcelain 밀어 사용할 수 있습니다

> git push --dry-run --verbose origin head:test/me 

Pushing to [email protected]:myproject.git 
To [email protected]:myproject.git 
* [new branch]  head -> test/me 
+0

HEAD를 test/me로 밀어 넣으라고 명시 적으로 말했고 그 답례로 test/me라는 서버에 새 분기를 만들 것이라고 말했습니다. 그것에 대해 뭐가 뭐야? –

+0

@Kevin 해시 목록이나 foo..bar 구문을 통해 원격 저장소에 전송할 커밋의 전체 목록을 알고 싶습니다. – nohat

+0

git 푸시가 refs를 푸시 한 경우 git 푸시 푸시는 몇개의 refs입니까? – nohat

답변

0

: git push --dry-run --verbose은 매우 피상적 ​​요약을 제공합니다.

2
git log @{u}.. 

아직 리모컨으로 푸시되지 않은 모든 커밋을 나열합니다. 당신이 다음 -p를 추가 커밋 각각의 DIFF를 원하는 경우에 후

git log -p @{u}.. 

예, 끝에서 두 개의 점이 필요 로그인합니다. :)

+0

이것은 유망하다고 생각하지만 @ {u}는 무엇이되어야합니까? 내가 이것을 실행하면 '오류 : 상류 지점을 찾을 수 없음' ' 오류 : 상류 지점을 찾을 수 없음' ' 오류 : 상류 지점을 찾을 수 없음' ' 치명적 : 모호한 인수'@ {u} .. ': 작업 트리에 알 수없는 개정 또는 경로가 없습니다. 리비전에서 경로를 분리하기 위해 '-'를 사용하십시오. – nohat

+0

@nohat이 응답은 매우 늦게 발생하지만 그럼에도 불구하고 여기에 있습니다 : @ {u}는 리모트의 팁에 대한 포인터 인 @ {upstream}의 약식입니다 현재 분기가 추적중인 추적 분기입니다. 표시되는 오류는 현재 활성 분기와 원격 추적 분기 간의 매핑이 누락되어 있기 때문입니다. 매핑을 설정하려면'git branch --set-upstream /'을 실행하십시오. 'test'가 브랜치이고'origin'이 리모트라면'git branch --set-upstream test origin/test'가 매핑을 설정합니다. 또한 -ve 점수를 철회하면 행복 할 것입니다. – brahmana

+0

바로 가기를 알고 있습니다! 'git cherry -v @ {u}'도 할 수 있습니다. –

관련 문제