git pull的手册页,在“与获取相关的选项”下面说
您永远不会在pull:lines上出现在冒号右侧的分支上进行自己的开发;它们将由git fetch更新。如果你
打算执行从远程分支B派生的开发,使用pull:line跟踪它(即pull:B:remote-B),并使用单独的分支My-B执行
在此基础上发展。后者由git branch my-b remote-b(或其等效的git checkout-b my-b remote-b)创建。运行git fetch以跟踪
远程端的进度,当您在远程分支上看到新的内容时,使用git pull将其合并到开发分支中。遥控器-B,当你打开时
我的乙支。
我们正在试验一个工作流,它是:

git fetch origin
git checkout -b un-3437 origin/un-3437

我认为在这个例子中UN-3437是手册页评论中的B。因此,我们应该从UN-3437开始。然而,这似乎是很多额外的工作。
其次,忽略上面段落中的第二个分支思想,我们发现git status会说本地分支领先于远程by x提交。我们不知道如果我们刚刚完成git pull,会是什么样。
我们的思维模式似乎是错误的。有没有好的资源来解释所有这些指针?

最佳答案

手册页上说,如果在“pull:”配置中出现在冒号的右侧,则永远不会在分支上进行开发。这并不是说你不应该在一个分支中进行开发,这个分支的名称与结肠左侧的名称相同。
冒号左边的内容无关紧要,因为这些引用位于远程服务器上。出现在右侧的名称确实很重要,因为它引用了本地存储库上的一个分支,该分支将被自动更新(不合并!)通过拉取或获取,您不希望在本地修改该引用分支,否则可能会丢失(如果强制更新)或无法获取远程更改的本地副本(如果不强制更新)。

08-26 20:27
查看更多