我运行'git branch -r'并得到
起源/分支1
起源/分支2
在手册页中,-r 选项将“列出或删除(如果与 -d 一起使用)远程跟踪分支”。所以 origin/branch1 和 origin/branch2 被称为远程跟踪分支。但是,您不能直接提交到远程跟踪分支(将创建一个匿名分支)。远程跟踪分支仅在运行“git fetch”时跟踪远程分支。
这是语义对我来说有点模糊的地方。如果我那时
git checkout -b 分支 1 原点/分支 1
我得到以下输出:“分支分支 1 设置为从源跟踪远程分支分支 1。切换到新分支 'branch1'”
这是我的问题,尽可能详细地澄清什么让我感到困惑......由于设置了 branch1 以从源跟踪远程分支 branch1,因此“branch1”是否被视为远程跟踪分支?如果是这样,这是否与运行 'git branch -r' 时'origin/branch1' 已被列为远程跟踪分支的事实相冲突?据我了解,存在本地(主题)分支或远程跟踪分支。运行“git checkout -b branch1 origin/branch1”时,我是否创建了一个本地(主题)分支(我可以在其上添加提交),它通过获取来跟踪远程分支?运行“git branch”现在给出:“* branch1”,运行“git branch -r”仍然给出“origin/branch1”和“origin/branch2”。我创建了 branch1 来添加提交并跟踪 origin/branch1。哪个被认为是远程跟踪分支,“git branch”输出中的“branch1”,或“git branch -r”输出中的“origin/branch1”?