Git에서 분기 토폴로지를 시각화하는 중
저는 Git을 제 기계로 따로 가지고 놀기 때문에 모든 브랜치나 커밋의 멘탈 모델을 유지하는 것이 어렵습니다.가 할 수 걸 git log
커밋 이력을 확인할 수 있습니다만, 브랜치 토폴로지 전체를 볼 수 있는 방법이 있을까요?이 ASCII 맵은 브랜치를 설명하기 위해서 어디에서나 사용되고 있는 것 같습니다.
.-A---M---N---O---P
/ / / / /
I B C D E
\ / / / /
`-------------'
누군가 와서 내 저장소를 주우려고 하면 무슨 일이 일어나고 있는지 정확히 알아내는 데 어려움이 있을 것 같아.
AcuRev의 스트림브라우저에 영향을 받은 것 같아요
git log --graph
★★★★★★★★★★★★★★★★★」gitk
( 모두 (「 」)를 받아들입니다)--all
현재 브랜치뿐만 아니라 모든 브랜치가 표시됩니다.)
지점 이름 및 소형 뷰의 경우 다음을 수행하십시오.
git log --graph --decorate --oneline
3개의 에일리어스(빠른 사용을 위해 4개의 에일리어스)가 있습니다.~/.gitconfig
삭제:
[alias]
lg = lg1
lg1 = lg1-specific --all
lg2 = lg2-specific --all
lg3 = lg3-specific --all
lg1-specific = log --graph --abbrev-commit --decorate --format=format:'%C(bold blue)%h%C(reset) - %C(bold green)(%ar)%C(reset) %C(white)%s%C(reset) %C(dim white)- %an%C(reset)%C(auto)%d%C(reset)'
lg2-specific = log --graph --abbrev-commit --decorate --format=format:'%C(bold blue)%h%C(reset) - %C(bold cyan)%aD%C(reset) %C(bold green)(%ar)%C(reset)%C(auto)%d%C(reset)%n'' %C(white)%s%C(reset) %C(dim white)- %an%C(reset)'
lg3-specific = log --graph --abbrev-commit --decorate --format=format:'%C(bold blue)%h%C(reset) - %C(bold cyan)%aD%C(reset) %C(bold green)(%ar)%C(reset) %C(bold cyan)(committed: %cD)%C(reset) %C(auto)%d%C(reset)%n'' %C(white)%s%C(reset)%n'' %C(dim white)- %an <%ae> %C(reset) %C(dim white)(committer: %cn <%ce>)%C(reset)'
git lg
/git lg1
음음음같 뭇매하다
git lg2
음음음같 뭇매하다
★★★★★★★★★★★★★★★★★」git lg3
음음음같 뭇매하다
이것은 만능 솔루션이 아닙니다.기호에 따라 변경, 추가, 수정할 수 있는 템플릿입니다.이러한 기능을 사용하려면 다음을 권장합니다.
- 도 같이 넣어주세요.
.gitconfig
, - 취향에 맞게 커스터마이즈할 수 있습니다(2줄 및 3줄 버전에서는 다른 색상 선택 가능).
- Gist에 수 .
.gitconfig
(또는 버전 제어로 닷파일을 사용할 수도 있습니다).
주의: 답변은 stackoverflow.com/questions/1057564/pretty-git-branch-graphs에서 복사하여 개선되었습니다.여기는 기존보다 훨씬 적절하기 때문입니다.과거사상의 이유로 다른 질문에는 카피를 남겨두었습니다.현재 닫혀 있습니다.답변은 많은 다른 답변에 의해 참조되고 있습니다.
나는 주로 사용한다.
git log --graph --full-history --all --pretty=format:"%h%x09%d%x20%s"
색상 포함(쉘이 Bash인 경우):
git log --graph --full-history --all --color \
--pretty=format:"%x1b[31m%h%x09%x1b[32m%d%x1b[0m%x20%s"
다음과 같은 텍스트 기반 표현이 인쇄됩니다.
* 040cc7c (HEAD, master) Manual is NOT built by default
* a29ceb7 Removed offensive binary file that was compiled on my machine and was hence incompatible with other machines.
| * 901c7dd (cvc3) cvc3 now configured before building
| * d9e8b5e More sane Yices SMT solver caller
| | * 5b98a10 (nullvars) All uninitialized variables get zero inits
| |/
| * 1cad874 CFLAGS for cvc3 to work successfully
| * 1579581 Merge branch 'llvm-inv' into cvc3
| |\
| | * a9a246b nostaticalias option
| | * 73b91cc Comment about aliases.
| | * 001b20a Prints number of iteration and node.
| |/
|/|
| * 39d2638 Included header files to cvc3 sources
| * 266023b Added cvc3 to blast infrastructure.
| * ac9eb10 Initial sources of cvc3-1.5
|/
* d642f88 Option -aliasstat, by default stats are suppressed
(이렇게 하다)로 하면 요.git log --format=oneline
, 수 있습니다.IMHO보다 덜 IMHO입니다.
하려면 , 「 」를 .~/.gitconfig
삭제:
[alias]
gr = log --graph --full-history --all --color --pretty=tformat:"%x1b[31m%h%x09%x1b[32m%d%x1b[0m%x20%s%x20%x1b[33m(%an)%x1b[0m"
그러나, Vociences의 Sodel이 코멘트에서 언급했듯이, 이러한 긴 포맷 명령어는 외우기 어렵다.보통, 이것은 문제가 되지 않습니다.~/.gitconfig
수해야 할 보다 할 수 .
git log --graph --oneline
레시피 또는 에는, 「git log」(git log 「gitk」)를 추가할 수 .--simplify-by-decoration
역사의 재미없는 선형의 부분들을 붕괴시킬 수 있습니다.이것에 의해, 토폴로지가 한 번에 훨씬 더 많이 표시됩니다.이 옵션이 없으면 이해할 수 없는 큰 역사를 이해할 수 있게 되었습니다!
저는 이 글을 올려야 할 필요성을 느꼈습니다. 왜냐하면 이 글이 그렇게 잘 알려지지 않은 것 같기 때문입니다.역사 시각화에 관한 Stack Overflow 질문에는 거의 나타나지 않습니다.또, 찾고 싶다고 생각한 후에도, 찾는 데 꽤 시간이 걸렸습니다.드디어 데비안 버그 보고서에서 찾았어요.Stack Overflow에 대한 첫 번째 언급은 Antoine Pelisse의 답변인 것 같습니다.
Gitk의 출력은 때때로 읽기에 고통스럽다.
GitVersion을 쓰게 된 계기가 되었습니다.트리:
GitKraken은 토폴로지를 알기 쉽게 보여주는 크로스 플랫폼 GUI입니다.
다음은 몇 가지 고급 기능에 대한 간단한 비디오 튜토리얼입니다.
참고: 등록이 필요합니다.
의 99.999%는 역사를 .999%로 보는 입니다.git lg
는 '0.001%'입니다.git log
.
도움이 될 수 있는 로그 에일리어스를 2개 공유합니다(.gitconfig에서 설정).
[Alias]
lg = log --graph --pretty=format:'%Cred%h%Creset %ad %s %C(yellow)%d%Creset %C(bold blue)<%an>%Creset' --date=short
hist = log --graph --full-history --all --pretty=format:'%Cred%h%Creset %ad %s %C(yellow)%d%Creset %C(bold blue)<%an>%Creset' --date=short
git lg
현재 브랜치 이력이 표시됩니다.git hist
전체 브랜치 이력이 표시됩니다.
나는 다음과 같이 하고 싶다.
git log --graph --oneline --branches
(리모트 브랜치를 표시하기 위해서도 --all을 사용)
최신 Git 릴리즈와 연동 : 1.6.3 이후 도입 (2009년 5월 7일 (목)
--pretty=<style>
는, 「로그 패밀리의 커맨드의를 「로그 패밀리의 커맨드 패밀리는 다음과 같습니다--format=<style>
외에 '있다'도 있어요.--format=%formatstring
의 손이 모자라다--pretty=tformat:%formatstring
.
--oneline
는 ""의입니다.--pretty=oneline --abbrev-commit
PS D:\git\tests\finalRepo> git log --graph --oneline --branches --all
* 4919b68 a second bug10 fix
* 3469e13 a first bug10 fix
* dbcc7aa a first legacy evolution
| * 55aac85 another main evol
| | * 47e6ee1 a second bug10 fix
| | * 8183707 a first bug10 fix
| |/
| * e727105 a second evol for 2.0
| * 473d44e a main evol
|/
* b68c1f5 first evol, for making 1.0
로그 표시 범위(커밋 수)를 제한할 수도 있습니다.
PS D:\git\tests\finalRepo> git log --graph --oneline --branches --all -5
* 4919b68 a second bug10 fix
* 3469e13 a first bug10 fix
* dbcc7aa a first legacy evolution
| * 55aac85 another main evol
| | * 47e6ee1 a second bug10 fix
(마지막 5개의 커밋만 표시)
현재 선택된 솔루션에서 마음에 들지 않는 점은 다음과 같습니다.
git log --graph
너무 많은 정보가 표시됨(빠른 요약만 보려는 경우):
PS D:\git\tests\finalRepo> git log --graph
* commit 4919b681db93df82ead7ba6190eca6a49a9d82e7
| Author: VonC <vonc@laposte.net>
| Date: Sat Nov 14 13:42:20 2009 +0100
|
| a second bug10 fix
|
* commit 3469e13f8d0fadeac5fcb6f388aca69497fd08a9
| Author: VonC <vonc@laposte.net>
| Date: Sat Nov 14 13:41:50 2009 +0100
|
| a first bug10 fix
|
gitk
하지만 다른 창으로 가기 위해 셸 세션을 종료하도록 강제합니다.단, 마지막 n개의 커밋을 빠르게 표시하는 것으로 충분합니다.
Gitg는 OS X용 Gitx와 마찬가지로 Linux용 훌륭한 도구입니다.저장소의 트리 구조(gitx와 동일) 내부 어딘가에서 명령줄로 'gitg'를 실행하기만 하면 됩니다.
훌륭한 웹 기반 툴은 ungit입니다.Node.js와 Git이 지원하는 모든 플랫폼에서 실행됩니다.읽는 것보다 그런 게 더 쉽다고 생각하는 사람들을 위한 비디오가 있는데...
나는 git-big picture가 꽤 유용하다는 것을 알았다.
이것은 점이나 Graphviz를 사용하여 꽤 선형의 "1차원" 뷰 대신 예쁜 2D 그래프를 만듭니다.를 사용하여-i
옵션에는 분기점과 병합 커밋이 표시되지만 그 사이의 모든 것은 생략됩니다.
Branch Master를 보세요.
복잡한 분기 구조를 시각화하기 위해 각 분기 간의 모든 커밋을 한 줄로 정리하여 작성했습니다.숫자는 커밋 수를 나타냅니다.
git log --oneline --abbrev-commit --all --graph --decorate --color
보통 위의 명령어에 대한 에일리어스를 만듭니다.
alias gl='git log --oneline --abbrev-commit --all --graph --decorate --color'
그냥 ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★gl
.
Git git git git git git git git git git git 。을 엽니다.~/.gitconfig
[ ] 섹션에 다음 행을 추가합니다.
[alias]
lg = log --oneline --abbrev-commit --all --graph --decorate --color
그리고 이렇게 사용하세요.
git lg
샘플 출력:
티그도 있어요.'Branch Master'처럼 가지를 접지는 않지만
빠르고 터미널에서 운행됩니다.
고속(+키보드 컨트롤)이므로 뛰어난 UX를 얻을 수 있습니다.제 '어느 정도'와 비슷해요.ls
Git ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★」
숏컷이 ./
검색 등
(PS: 이 스크린샷의 배경에 있는 단말기입니다.요즘은 좋아졌지만 컴퓨터가 스크린샷을 찍을 수 없습니다.죄송합니다.)
(PPS: 저도 GitKraken을 사용하고 있습니다.시각은 매우 선명하지만 Tig보다 훨씬 무겁습니다.)
Mac 사용자의 경우 무료 오픈 소스 도구 GitUp을 확인하십시오(말장난 의도가 없음).
그래프가 표시되는 방식이 마음에 들어요.내가 본 다른 도구들보다 더 선명해.
프로젝트는 GitHub에 있습니다.
낄낄거리는 정말 멋진 그래프를 그린다.
TortoiseGit에는 "Revision Graph"라는 도구가 있습니다.Windows에서 저장소 → Turtoise Git → Revision Graph를 마우스 오른쪽 버튼으로 클릭하기만 하면 됩니다.
저는 Visual Studio Code 에디터를 사용하고 있는데, 저는 mhutchie가 만든 Git Graph 확장자에 매우 만족하고 있습니다(그리고 저만 그런 게 아니라 100만 명의 확장자가 있습니다!).
편집기가 마음에 드는 경우는, 확장 탭(왼쪽 가운데의 큐비클)으로 이동해, 「Git Graph」를 입력해 인스톨 합니다.
사용하려면 Git 컨트롤 탭으로 이동하여 View Git Graph 버튼을 누릅니다.
저는 다음과 같은 가명을 사용합니다.
[alias]
lol = log --graph --decorate --pretty=oneline --abbrev-commit
lola = log --graph --decorate --pretty=oneline --abbrev-commit --all
위에서 본 에일리어스보다 색채에 더 많은 정보가 있습니다.또, 매우 일반적인 것 같기 때문에, 타인의 환경에 존재하거나, 설명하지 않아도 대화중에 언급할 수 있는 경우가 있습니다.
VSCode 텍스트 에디터를 사용하는 사용자는 Git History Extension by D를 고려하십시오.Jayamanne:
게 요.git log
~/.gitconfig
「 」 「 」 력시 :
[alias]
l = log --all --graph --pretty=format:'%C(auto)%h%C(auto)%d %s %C(dim white)(%aN, %ar)'
되어 있는 는, 「」입니다.git l
뭇매를 맞다
Git 2.12+에서는 구성 옵션을 사용하여 그래프의 선 색상을 맞춤화할 수도 있습니다.
로그 형식에 대해서는 와 비슷하며, 작성자 이름(존중)이 추가됩니다..mailmap
) 및 관련 작성자 날짜.주의:%C(auto)
Git > = 1.8.3에서는 Git에 커밋 해시 등에 기본 색상을 사용하도록 지시하는 구문이 지원됩니다.
Gitx는 OS X를 사용하는 경우에도 훌륭한 시각화 도구입니다.
다른 git log 명령어.고정 너비 컬럼이 있는 것:
git log --graph --pretty=format:"%x09%h | %<(10,trunc)%cd |%<(25,trunc)%d | %s" --date=short
샘플 출력:
체크 아웃 합니다.TortoiseHg 브런치 비주얼라이제이션이 생각나 비상업적인 용도로는 무료입니다.
가 가명 ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★.gitconfig
입니다.
graph = log --graph --color --all --pretty=format:"%C(yellow)%H%C(green)%d%C(reset)%n%x20%cd%n%x20%cn%x20(%ce)%n%x20%s%n"
다음과 같이 명령줄에서 직접 테스트할 수 있습니다.
git log --graph --color --all --pretty=format:"%C(yellow)%H%C(green)%d%C(reset)%n%x20%cd%n%x20%cn%x20(%ce)%n%x20%s%n"
샘플 출력:
많은 답변 중에 Window/Linux/Mac에서 사용할 수 있는 Gitviz가 언급되지 않은 것이 신기했습니다.
브랜치 및 커밋의 2-D 뷰를 제공할 뿐만 아니라 git 명령어를 듣고 그래프를 스스로 수정합니다.
가장 높은 평가를 받은 답변이 표시됩니다.git log
명령어를 즐겨찾는 솔루션으로 사용합니다.
테이블과 같은, 예를 들어 컬럼과 같은 출력이 필요한 경우, 뛰어난 출력을 사용할 수 있습니다.git log
명령어에는 약간의 변경과 제한이 있습니다.configalias.table 스니펫은 다음과 같습니다.
변경:
- 써야 요.
%><(<N>[,ltrunc|mtrunc|trunc])
commit 홀더 - 열 구분 기호로 고유 구분 기호 추가
--color
제한 사항:
줄바꿈을 한할 수 .
%n...
는 newline 없이 할 수 .
%><(<N>[,trunc])
에 여분의
(committer:
,<
★★★★★★★★★★★★★★★★★」>)
...%C(dim white)(committer: %cn% <%ce>)%C(reset)...
표와 같은 출력을 얻으려면 커밋 플레이스 홀더 바로 앞과 뒤에 작성해야 합니다.
...%C(dim white)%<(25,trunc)(committer: %cn%<(25,trunc) <%ce>)%C(reset)...
--format=format:
.%C(reset)
그렇듯이git log
느리지만 .
이 사이트에서 인용한 예:
thompson1 = log --all --graph --abbrev-commit --decorate --format=format:'%C(bold blue)%h%C(reset) - %C(bold green)(%ar)%C(reset) %C(white)%s%C(reset) %C(dim white)- %an%C(reset)%C(auto)%d%C(reset)'
^
문자(「」)로 합니다.
thompson1-new = log --all --graph --color --abbrev-commit --decorate --format=format:'^%C(bold blue)%<(7,trunc)%h%C(reset)^%C(bold green)%<(21,trunc)%ar%C(reset)^%C(white)%<(40,trunc)%s%C(reset)^%C(dim white)%<(25,trunc)%an%C(reset)^%C(auto)%d%C(reset)'
비교해보면
또는 그래프를 5열로 이동할 경우:
이를 수행하려면 .gitconfig 파일에 다음 항목을 추가하고 로그 에일리어스를 호출합니다.git tably YourLogAlias
:
[color "decorate"]
HEAD = bold blink italic 196
branch = 214
tag = bold 222
[alias]
# delimiter used as column seperator
delim = ^
# example thompson1
thompson1 = log --all --graph --abbrev-commit --decorate --format=format:'%C(bold blue)%h%C(reset) - %C(bold green)(%ar)%C(reset) %C(white)%s%C(reset) %C(dim white)- %an%C(reset)%C(auto)%d%C(reset)'
# modified thompson1 example
thompson1-new = log --all --graph --color --abbrev-commit --decorate --format=format:'^%C(bold blue)%<(7,trunc)%h%C(reset)^%C(bold green)%<(21,trunc)%ar%C(reset)^%C(white)%<(40,trunc)%s%C(reset)^%C(dim white)%<(25,trunc)%an%C(reset)^%C(auto)%d%C(reset)'
# set a column for the graph
thompson1-new-col = 1
tably = !bash -c '" \
declare -A col_length; \
delim=$(git config alias.delim); \
git_log_cmd=$(git config alias.$1); \
git_tre_col=${2:-$(git config alias.$1-col)}; \
\
i=0; \
n=0; \
while IFS= read -r line; do \
((n++)); \
while read -d\"$delim\" -r col_info;do \
((i++)); \
[[ -z \"$col_info\" ]] && col_length[\"$n:$i\"]=${col_length[\"${last[$i]:-1}:$i\"]} && ((i--)) && continue; \
[[ $i -gt ${i_max:-0} ]] && i_max=$i; \
col_length[\"$n:$i\"]=$(grep -Eo \"\\([0-9]*,[lm]*trunc\\)\" <<< \"$col_info\" | grep -Eo \"[0-9]*\" | head -n 1); \
[[ -n \"${col_length[\"$n:$i\"]}\" ]] && last[$i]=$n; \
chars_extra=$(grep -Eo \"\\trunc\\).*\" <<< \"$col_info\"); \
chars_extra=${chars_extra#trunc)}; \
chars_begin=${chars_extra%%\\%*}; \
chars_extra=${chars_extra#*\\%}; \
case \" ad aD ae aE ai aI al aL an aN ar as at b B cd cD ce cE ci cI cl cL cn cN cr \
cs ct d D e f G? gd gD ge gE GF GG GK gn gN GP gs GS GT h H N p P s S t T \" in \
*\" ${chars_extra:0:2} \"*) \
chars_extra=${chars_extra:2}; \
chars_after=${chars_extra%%\\%*}; \
;; \
*\" ${chars_extra:0:1} \"*) \
chars_extra=${chars_extra:1}; \
chars_after=${chars_extra%%\\%*}; \
;; \
*) \
echo \"No Placeholder found. Probably no tablelike output.\"; \
continue; \
;; \
esac ; \
if [[ -n \"$chars_begin$chars_after\" ]];then \
len_extra=$(echo \"$chars_begin$chars_after\" | wc -m); \
col_length["$n:$i"]=$((${col_length["$n:$i"]}+$len_extra-1)); \
fi; \
\
done <<< \"${line#*=format:}$delim\"; \
i=1; \
done <<< \"$(echo -e \"${git_log_cmd//\\%n/\\\\n}\")\"; \
\
while IFS= read -r graph;do \
chars_count=$(sed -nl1000 \"l\" <<< \"$graph\" | grep -Eo \"\\\\\\\\\\\\\\\\|\\||\\/|\\ |\\*|_\" | wc -l); \
[[ ${chars_count:-0} -gt ${col_length["1:1"]:-0} ]] && col_length["1:1"]=$chars_count; \
done < <([[ -n \"$(grep -F graph <<< \"$git_log_cmd\")\" ]] && git log --all --graph --pretty=format:\" \" && echo); \
\
l=0; \
while IFS= read -r line;do \
c=0; \
((l++)); \
[[ $l -gt $n ]] && l=1; \
while IFS= read -d\"$delim\" -r col_content;do \
((c++)); \
if [[ $c -eq 1 ]];then \
[[ -n \"$(grep -F \"*\" <<< \"$col_content\")\" ]] || l=2; \
chars=$(sed -nl1000 \"l\" <<< \"$col_content\" | grep -Eo \"\\\\\\\\\\\\\\\\|\\||\\/|\\ |\\*|_\" | wc -l); \
whitespaces=$((${col_length["1:1"]}-$chars)); \
whitespaces=$(seq -s\" \" $whitespaces|tr -d \"[:digit:]\"); \
col_content[1]=\"${col_content[1]}$col_content$whitespaces\n\"; \
else \
col_content[$c]=\"${col_content[$c]}$(printf \"%-${col_length[\"$l:$c\"]}s\" \"${col_content:-\"\"}\")\n\"; \
fi; \
done <<< \"$line$delim\"; \
for ((k=$c+1;k<=$i_max;k++));do \
empty_content=\"$(printf \"%-${col_length[\"$l:$k\"]:-${col_length[\"${last[$k]:-1}:$k\"]:-0}}s\" \"\")\"; \
col_content[$k]=\"${col_content[$k]}$empty_content\n\"; \
done; \
done < <(git $1 && echo); \
\
while read col_num;do \
if [[ -z \"$cont_all\" ]];then \
cont_all=${col_content[$col_num]}; \
else \
cont_all=$(paste -d\" \" <(echo -e \"$cont_all\") <(echo -e \"${col_content[$col_num]}\")); \
fi; \
done <<< $(seq 2 1 ${git_tre_col:-1};seq 1;seq $((${git_tre_col:-1}+1)) 1 $i_max); \
echo -e \"$cont_all\"; \
"' "git-tably"
이것은 제 답변 https://stackoverflow.com/a/61487052/8006273의 일부에 불과합니다.이 답변에서는 자세한 설명을 찾을 수 있지만, 이 질문에도 잘 들어맞습니다.
git log
이치노
의 내내 my i my my my my my 。compact
있습니다.git log
★★★★★★★★★★★★★★★★★★:
콘솔색상입니다.) (초록색)
가능한 한 콤팩트하고 테이블과 같은 크기(스페이스 추가 없이)로 설계되어 있어 정보 제공 및 읽기 편리합니다.이것은 기본적으로 의 컴팩트한 버전입니다.medium
Git ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★.
특징:
- 고정 항목 위치
- 커밋 해시 및 참조 이름의 기본 색상
- 커밋 작성자 날짜는 로컬 표준시입니다.
- 커밋 메시지는 128자로 둘러싸여 들여씁니다.
- 확장 커밋메시지(있는 경우)도 표시되며 후행의 새로운 행이 삭제됩니다.
다음 명령을 사용하여 컨피규레이션파일에 추가할 수 있습니다.
(모두의 날짜 형식을 변경하는 것에 주의해 주세요. git log
★★★★★★★★★★★★★★★★★★」
$ git config --global log.date 'format-local:%d %b %Y %H:%M'
$ git config --global pretty.compact '%C(auto)%h %C(cyan)%<(17,trunc)%an%C(auto) %D%n %C(cyan)%ad%C(auto) %w(128,0,26)%s%w(0,0,26)%+b%-(trailers:key=FAKE)'
(와 함께) 사용합니다.아아아아아아아아아아아아아아아아아아아아아아아아아아아아아아아아아아아아아아아아.--graph
,--all
[ ] :
$ git log --graph --pretty=compact
디폴트 설정으로 하려면 , 다음의 커맨드를 사용합니다.
$ git config --global format.pretty compact
또는 별칭을 좋아하는 경우:
$ git config --global alias.logc "log --date=format-local:'%d %b %Y %H:%M' --pretty='%C(auto)%h %C(cyan)%<(17,trunc)%an%C(auto) %D%n %C(cyan)%ad%C(auto) %w(128,0,26)%s%w(0,0,26)%+b%-(trailers:key=FAKE)'"
변경을 하고 싶은 경우는, 의 「PRETY FORMATs」섹션을 참조해 주세요.git log
★★★★★★ 。
날짜 형식 지정 Git 내장 도구(추가 기능 없음)
중된 날짜 .git log
툴링Docs는 기능에 대해 조금 둔감하기 때문에, 이 기능에 사용하는 2개의 에일리어스를 추가했습니다.
git tree
의 타임스탬프 : " " " " " "
# Tools for analyzing the merge history of a repo using tree-like graphics
[alias]
tree = log --no-show-signature --graph --date=format-local:%H:%M:%S --all \
--pretty="'%C(#ffe97b ul)%h%C(reset) %C(#568ea6)%cs %C(#305f72)%cd%C(reset)%C(auto)%d%C(reset) %s %C(yellow)(%C(reset)%C(#1abc9c)%an%C(reset)%C(yellow),%C(reset) %C(#007055)%cr%C(reset)%C(yellow))%C(reset)'"
git tree.branches
의 타임스탬프 - "/" " " "
# Some refinements to normal 'git tree' output for alternative perspectives.
[alias "tree"]
branches = tree --simplify-by-decoration
색상 코드
사양 | 색. | 스타일. |
---|---|---|
커밋 ID | 노란 색 | 밑줄 치다 |
커밋 날짜 | 다크 블루 | |
커밋 타임 | 라이트 블루 | |
커밋 메시지 | 하얀색 | |
작성자 커밋 | 초록의 | |
상대 날짜 커밋 | 짙은 녹색 | |
리모트 브랜치 | 빨간. | |
로컬 브런치 | 보라색 | |
태그 | 핑크 | 밑줄 치다 |
Windows 에서는, Git Extensions 를 사용할 수 있는 매우 편리한 툴이 있습니다.GUI 툴로 Git 조작이 매우 용이합니다.
또한 오픈 소스입니다.
언급URL : https://stackoverflow.com/questions/1838873/visualizing-branch-topology-in-git
'IT' 카테고리의 다른 글
Retina 디스플레이 검출 (0) | 2023.04.18 |
---|---|
UILabel의 NSAttributedString에 탭 가능한 "링크"를 작성하시겠습니까? (0) | 2023.04.18 |
PowerShell에서 한 줄씩 파일 읽기 (0) | 2023.04.18 |
PowerShell을 사용하여 파일에서 읽기 전용 속성을 삭제하는 방법 (0) | 2023.04.18 |
★★★★★★★★★★★★★★★★★」 ★★★★★★★★★★★★★★★★★」 ★★★★★★★★★★★★★★★★★」? (0) | 2023.04.18 |