git checkout <remote>/<branch>
与git checkout <branch>
之间的区别是什么?您何时需要使用git checkout <remote>/<branch>
?
答案 0 :(得分:3)
要理解的关键是远程分支是名为<remote>/<branch>
的普通分支。它们只是指向提交的引用(标签)。主要区别在于你无法承诺。
你为什么要看一个远程分支?要检查上游项目的状态,可能尝试构建它。否则,你就不会。
有引用远程分支的用途......
git diff remote/branch
查看分支与遥控器之间的差异。git log remote/branch..HEAD
查看遥控器的更改。git branch -f branch remote/branch
抛弃所有本地更改。答案 1 :(得分:2)
git checkout <remote>/<branch>
将检查git rev-parse refs/remotes/<remote>/<branch>
解析的提交,并让您处于“独立的HEAD”状态。
git checkout <branch>
将检出给定的本地分支,或者,根据您的配置,可能会自动创建一个名为<branch>
的本地分支,该分支设置为跟踪<remote>/<branch>
,并且然后查看当地分公司。它不会让你处于“分离的HEAD”状态,而是在本地分支上(除非它由于某种原因失败,就像你配置它不自动创建分支,并且命名分支不存在)。