git checkout <remote> / <branch>与git checkout <branch>之间的区别是什么?</branch> </branch> </remote>

时间:2014-12-19 18:49:11

标签: git github

git checkout <remote>/<branch>git checkout <branch>之间的区别是什么?您何时需要使用git checkout <remote>/<branch>

2 个答案:

答案 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”状态,而是在本地分支上(除非它由于某种原因失败,就像你配置它不自动创建分支,并且命名分支不存在)。