git checkout <remote>/<branch>
和git checkout <branch>
有什么区别?什么时候需要使用git checkout <remote>/<branch>
?
要了解的关键是远程分支是名称为 <remote>/<branch>
的普通分支。 它们只是指向提交的引用(标签(。 主要区别在于您不能承诺它们。
为什么要查看远程分支机构? 要检查上游项目的状态,也许可以尝试构建它。 否则,你不会。
引用远程分支有一些用途...
-
git diff remote/branch
查看分支机构和远程之间的区别。 -
git log remote/branch..HEAD
查看遥控器的变化。 -
git branch -f branch remote/branch
抛弃所有本地更改。
git checkout <remote>/<branch>
将检查出git rev-parse refs/remotes/<remote>/<branch>
解析到的提交,并使您处于"分离的HEAD"状态。
git checkout <branch>
将签出给定的本地分支,或者根据您的配置,可能会自动创建一个名为 <branch>
的本地分支,该分支设置为为您跟踪<remote>/<branch>
,然后签出该本地分支。它不会让你处于"分离的 HEAD"状态,而是在本地分支上(除非它由于某种原因失败,比如你将其配置为不自动创建分支,并且命名的分支不存在(。