Programing

첫 번째 줄에서만 git log를 출력하는 방법은 무엇입니까?

lottogame 2020. 3. 18. 08:02
반응형

첫 번째 줄에서만 git log를 출력하는 방법은 무엇입니까?


에 대한 형식을 사용자 정의하려고합니다 git log. 모든 커밋이 한 줄에 표시되기를 원합니다. 각 줄은 커밋 메시지의 첫 번째 줄만 표시해야합니다.
나는 발견git log --pretty=short트릭을해야하지만, 나의 컴퓨터에 전체 로그를 보여줍니다 git log(타임 스탬프 외에)한다.

또한 man 페이지에 정의 된 자리 표시자를 사용하려고했습니다 . 그러나 로그 메시지를 줄이는 명령을 찾을 수 없습니다. git log --pretty=format:'%h : %s'짧은 해시 %h와 전체 메시지 %s를 한 줄에 표시하는 이 줄 시도했습니다 .

git version 1.7.3.1.msysgit.0Vista에서 사용 하고 있습니다.


커밋 메시지를 작성하는 방식과 관련이있을 수 있습니다. 예를 들면 다음과 같습니다.

Added some functionality.
+ Added print function in Foo class.
+ Added conversion from foo to baz.

따라서 주어진 예에서 나는 Added some functionality.짧은 해시가 앞에 붙는 출력 만 원합니다 .


이것을 시도 했습니까?

git log --pretty=oneline --abbrev-commit

첫 번째 줄 다음에 빈 줄이없는 것이 문제 일 수 있습니다. 위의 명령은 일반적으로 저에게 효과적이지만 빈 두 번째 줄없이 커밋을 테스트했습니다. 나는 당신과 같은 결과를 얻었습니다 : 한 줄에 전체 메시지.

빈 두 번째 줄은 git commit 메시지의 표준입니다. 당신이 보는 행동은 아마도 의도적으로 구현되었을 것입니다.

커밋 메시지의 첫 번째 줄은 간단한 설명입니다. 한 줄로 만들 수 없다면 여러 줄을 사용할 수 있지만 git은 첫 번째 빈 줄 앞의 모든 것을 "짧은 설명"으로 간주합니다. oneline전체 간단한 설명을 인쇄하므로 3 행이 모두 표시됩니다.


합니까는 git log --oneline당신이 원하는 무엇입니까?


더 나은쉽게 함으로써 자식 로그 별칭을 . 한 세션 동안 아래 코드를 터미널에 한 번만 붙여 넣으십시오. 코드를 zshrc 또는 bash 프로파일에 붙여 넣어 지속시킵니다.

git config --global alias.lg "log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit"

산출

git lg

출력 변경 라인

git lg -p

또는 (권장)
이 코드를 전역 .gitconfig 파일에 붙여 넣기

[alias]
  lg = log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit

더 읽을 거리.
https://coderwall.com/p/euwpig/a-better-git-log
고급 읽기.
http://durdn.com/blog/2012/11/22/must-have-git-aliases-advanced-examples/


보다 편리한 방식으로 짧은 로그를 호출 할 수 있도록 글로벌 별명을 정의 할 수 있습니다.

git config --global alias.slog "log --pretty=oneline --abbrev-commit"

그런 다음 사용하여 호출 할 수 있습니다 git slog(자동 완성 기능을 사용하는 경우에도 작동합니다).


이것은 해시없이 메시지 (제목 줄 만)를 인쇄합니다.

git log --pretty=format:%s

커밋 메시지가 없으면 해시 만 :

git log --pretty=oneline | awk '{print $1}'

항상 git log그런 식으로 사용하려면 git alias를 다음과 같이 추가 할 수 있습니다

git config --global alias.log log --oneline

그 후 git log정상적으로 인쇄되는 것을 인쇄합니다git log --oneline

참고 URL : https://stackoverflow.com/questions/4479225/how-to-output-git-log-with-the-first-line-only

반응형