Ida*_*rye 3 git branch git-remote git-branch
我刚刚开始学习Git,我正在使用的教程说当克隆远程存储库时,切换到远程分支是一个很大的禁忌.那就是 - 如果我克隆了一个具有分支名称的存储库branch1,并且我想要使用它,我需要使用它
git checkout --track -b branch1 origin/branch1
Run Code Online (Sandbox Code Playgroud)
跟踪它.但是,当我试图使用时
git checkout branch1
Run Code Online (Sandbox Code Playgroud)
Git回答道
Branch branch1 set up to track remote branch branch1 from origin.
Switched to a new branch 'branch1'
Run Code Online (Sandbox Code Playgroud)
因此,我的常识告诉我,自从编写该教程以来,Git的开发人员修复了这个陷阱,并且如果有人试图切换到远程分支,Git会自动执行它,并创建一个跟踪它的本地分支.但是,我在发布说明或Google搜索中找不到任何对此更改的引用.
那么,他们修好了吗?简单地检查那些远程分支现在是否安全?或许我误解了该教程中的警告,这是指我应该注意的另一个陷阱?
您没有签出远程分支.
检查出来branch1是不一样的检查出"远程分支".以下命令尝试签出不存在的本地分支:
git checkout branch1
Run Code Online (Sandbox Code Playgroud)
而以下命令检出远程分支指向的提交:
git checkout origin/branch1
Run Code Online (Sandbox Code Playgroud)
这导致一个独立的头,可能是教程警告的陷阱.
如果您尝试检出本地不存在但在远程上具有相同名称的分支的分支,Git将自动创建一个本地分支并将其设置为跟踪同名的远程.