当我在一个比origin
早提交几次的本地分支上执行git log --oneline
时,我得到如下内容:
ff0dc35 (HEAD -> main) Style headers
08183f1 Fix <Title>s
071d82e (origin/main, origin/HEAD) Style list items
9b24f09 Add style.css
b9fd2fa Add index.html and 3 other pages
69748ca Initial commit
从这个答案,我明白了
HEAD
是指我的repo当前指向 的提交。main
为分支origin
为远程repo
我不明白的是->
符号(例如HEAD -> main
)与/
符号(例如origin/main
和origin/HEAD
)之间的区别。每件事是什么意思?
HEAD -> main
origin/main
origin/HEAD
HEAD
isalways你站在哪里(与svn的HEAD
有很大不同的概念,以防万一)。如果签出了本地分支,它将显示HEAD -> some-branch
。如果您没有在本地分支上工作(也称为分离的HEAD状态),则它将显示为HEAD
,而不指向任何东西。那么origin/main
就是origin
remote中的main
分支。origin/HEAD
是当前远程repo的HEAD
所在的位置。