2012-08-14 2 views
0

이 명령을 사용 : 그것은이 인쇄자식 쇼 인쇄 원하지 않는 태그 정보

$ git show -s --pretty=format:%H --all 

:

41b253549d86db3432743c1c8a9f75511779073c 
83cfbe4b5a128ab06733fdde24f67171a1cf945c 

20c18bee751e681856ee4587bb513400b472f941 
ba73e741f3ccf7b719a67436cf8b953a1bdeeb89 

tag 1.0 
Tagger: <snip> 


129cba44e34066bfee7ad19a278ead94c2edece9 
tag 1.0.1 
Tagger: <snip> 


6fcdc763265454e602b746e4d81942a1f0597f2e 
tag 1.0.2 
Tagger: <snip> 


36e56a8bc0d568661fa61cdb0a4e4c69c4c30efb 
tag 1.0beta1 
Tagger: <snip> 

가 난 단지 이름과 얇은 생철 태그를하지, 인쇄 할 해시를 커밋합니다. 이 문제를 해결하려면 어떻게해야합니까?

+1

사용중인 git 버전은 무엇입니까? 내가 설치 한 버전이나 최신 버전 (http://git-scm.com/docs/git-show)의 문서에서'-s' 또는'--all' 플래그를 찾을 수 없습니다 – opqdonut

+0

@opqdonut 나는 1.7.11.3을 사용하고있다. 그 플래그는 유효하지만, 왜 문서화되어 있지 않은지 확실하지 않습니다. –

답변

2

난 당신이 태그를 나열 할 경우 확실하지 않다 (I 아마도 트릭을 할 것입니다 git log 또는 git rev-list를 사용하면 태그 만이있는 REPO에조차보고있는 동작을 재현 할 수 없습니다) 커밋하지만 태그 정보를 생략하거나 포함 된 태그 된 커밋을 원하지 않습니다.

첫 번째 경우라면 git rev-list --all --no-walk은 원하는대로해야합니다.

git rev-list --branches --no-walk의 경우 또는 git show -s --pretty=format:%H --branches의 경우에도 적용됩니다.

+0

처음에는 첫 번째 사례를 찾고 있었지만 스크립트를 다시 보았지만 태그가있는 커밋은 전혀 필요하지 않습니다. 'git show -s --pretty = format : % H --branches'는 훌륭하게 작동했습니다! –

0

당신이 먼저 해시를 커밋 알고있는 경우의 그것 e562b3의 가정하자, 당신은이 작업을 수행 할 수 있습니다

git show -s --pretty=format:%H e562b3..HEAD 
0

당신은 시도해 봤어 git log --pretty=format:%H --all를 사용하는 대신 git show를 사용하고 계십니까?

목표가 무엇인지는 실제로 말하지 않지만 단지 git rev-list --all 만 사용하고 싶을 수도 있습니다.