programing

전체 메시지 git와 함께 모든 태그를 나열하는 방법은 무엇입니까?

goodcopy 2023. 5. 28. 22:20
반응형

전체 메시지 git와 함께 모든 태그를 나열하는 방법은 무엇입니까?

나는 모든 태그와 전체 주석 또는 커밋 메시지를 나열하기를 원합니다.이와 같은 것이 가깝습니다.

git tag -n5

이것은 태그 메시지의 처음 5행까지만 표시된다는 점을 제외하고는 제가 원하는 대로 합니다.

저는 그냥 아주 큰 숫자를 사용할 수 있을 것 같습니다.제가 여기서 사용할 수 있는 가장 높은 번호는 몇 번입니까?모든 컴퓨터에서 동일합니까?

업데이트: 저는 이것에 대해 생각할 시간이 많았으며, 이제는 각 메시지 중 일부가 비정상적으로 길다면 전체 메시지를 반드시 보여주고 싶지 않다고 생각합니다.저는 대량의 메시지를 볼 필요가 없었습니다(태그 메시지를 포함하여 제가 쓰는 모든 것에 대해 긴 시간을 낭비하는 제 자신의 성향을 제외하면).저는 단지 그것이 제게 모든 메시지를 보여줄 필요가 없다는 생각이 싫었습니다. 왜냐하면 그것이 제게 정보를 숨기는 것처럼 느끼게 했기 때문입니다.하지만 너무 많은 정보는 나쁜 것일 수도 있습니다.

이렇게 하면 모든 태그가 주석과 함께 나열되고 모든 태그에 대한 9줄의 메시지가 표시됩니다.

git tag -n9

사용할 수도 있습니다.

git tag -l -n9

특정 태그를 나열할 경우:

git tag -l -n9 v3.*

(예: 위 명령은 "v3"로 시작하는 태그만 표시합니다.)

-l , --list 지정된 패턴과 일치하는 이름을 가진 태그(또는 패턴이 지정되지 않은 경우 모두)를 나열합니다.인수 없이 "git tag"를 실행하면 모든 태그도 나열됩니다.패턴은 셸 와일드카드입니다(즉, fnmatch(3)를 사용하여 일치됨).여러 패턴을 지정할 수 있습니다. 일치하는 패턴이 있으면 태그가 표시됩니다.

git tag -n99

짧고 달콤합니다.각 태그 주석/커밋 메시지에서 최대 99개의 행이 나열됩니다.git tag 공식 문서 링크입니다.

태그당 최대 99개의 줄만 표시하는 제한은 실제로 좋은 것이라고 생각합니다. 대부분의 경우 태그당 99개 이상의 줄이 있다면 나머지 줄은 모두 표시하고 싶지 않을 것입니다.태그당 99개 이상의 행을 표시하려면 이 값을 항상 더 큰 숫자로 늘릴 수 있습니다.

제 말은, 거대한 태그 메시지를 보고 싶은 특정 상황이나 이유가 있을 수 있다고 생각합니다만, 어느 시점에서 전체 메시지를 보고 싶지 않으십니까?999개 이상의 선이 있을 때?10,000? 1,000,000?제 요점은, 일반적으로 몇 개의 선을 볼 수 있는지에 대한 상한선을 두는 것이 합리적이라는 것입니다. 그리고 이 숫자를 사용하면 그것을 설정할 수 있습니다.

태그를 볼 때 일반적으로 보고 싶은 것에 대해 제가 논쟁을 하고 있기 때문에 (아래 Iulian Onofrei의 코멘트에서) 이러한 것을 별칭으로 설정하는 것이 아마도 타당할 것입니다.

git config --global alias.tags 'tag -n99'

내 말은, 당신은 정말로 입력할 필요가 없습니다.git tag -n99태그를 보고 싶을 때마다 그렇죠?해당 별칭이 구성되면 태그를 보고 싶을 때마다 다음과 같이 입력합니다.git tags당신의 터미널로.개인적으로, 저는 이것보다 한 단계 더 나아가고 일반적으로 사용하는 모든 명령에 대해 훨씬 더 축약된 bash 별칭을 만드는 것을 선호합니다.이를 위해 다음과 같은 것을 .bashrc 파일에 추가할 수 있습니다(Linux 및 유사한 환경에서 작동).

alias gtag='git tag -n99'

그런 다음 태그를 보고 싶을 때마다 입력합니다.gtag별칭 경로(git 별칭 또는 bash 별칭 등)를 따라 이동할 때의 또 다른 이점은 태그를 개인적으로 표시하는 방식에 추가 사용자 지정을 추가할 수 있는 자리가 이미 마련되었다는 것입니다(아래 설명과 같이 특정 방식으로 태그를 정렬하는 것 등).이 첫 번째 별칭을 , 여러분은 으로 더 될 입니다. 를 들어, 첫번별만번나극다같복맞고하방은면좋작될알것쉬얼것만더많별위게이운는나드지다마니입을칭은해항을다목른는하기아하업로으식째형춤을음을칭과거드는움로,▁once▁alias▁like▁how▁you▁realize▁now▁yourized▁in▁way쉬▁easy얼알,▁will▁things▁custom것▁like▁first▁creating될▁more▁other것만▁you▁agit log다른 질문/답변을 위해 저장해둡시다.

Mark Longair의 답변(사용)git show는 질문에서 원하는 것에 가깝습니다.그러나 태그가 가리키는 커밋과 해당 커밋에 대한 전체 패치도 포함됩니다.커밋은 태그와 다소 관련이 없을 수 있으므로(태그가 캡처를 시도하는 것은 하나의 커밋일 뿐) 바람직하지 않을 수 있습니다.저는 다음이 조금 더 좋다고 생각합니다.

for t in `git tag -l`; do git cat-file -p `git rev-parse $t`; done

--format 옵션 사용

git tag -l --format='%(tag) %(subject)'

예쁜 것과는 거리가 멀지만 다음과 같은 작업을 수행하는 스크립트나 별칭을 만들 수 있습니다.

for c in $(git for-each-ref refs/tags/ --format='%(refname)'); do echo $c; git show --quiet "$c"; echo; done

마지막 태그 메시지만:

git cat-file -p $(git rev-parse $(git tag -l | tail -n1)) | tail -n +6
git tag -l --format='%(contents)'

또는

git for-each-ref refs/tags/ --format='%(contents)'

모든 태그(서명된 경우 서명 포함)에 대해 전체 주석 메시지를 출력합니다.

  • %(contents:subject) 번째 합니다.
  • %(contents:body) 줄과을 출력합니다("표시됨).
  • %(contents:signature)PGP 서명만 출력합니다.

자세한 내용은 "필드 이름" 섹션을 참조하십시오.

이 명령을 사용하여 태그 메시지를 표시할 수 있습니다.

git tag -n

-n 메시지 표시 옵션입니다.

하는 것을 웹에는 명줄에서이작령수업행것를사선면용하사용고하웹를스호인을터이만페하지를 방문할 수 있습니다.https://github.com/user/repo/tags각 태그 옆에 있는 "..."를 클릭하여 주석을 표시합니다.

언급URL : https://stackoverflow.com/questions/5358336/how-to-list-all-tags-along-with-the-full-message-in-git

반응형