为什么用户不应该修改远程跟踪分支

时间:2015-08-08 18:58:35

标签: git branch

http://www.gitguys.com/topics/tracking-branches-and-remote-tracking-branches/说:"用户不应修改远程跟踪分支(不要通过git checkout将git分支设置为远程跟踪分支,然后尝试修改远程跟踪分支)。 "

首先,除了正常的工作流程之外,如何修改远程跟踪分支?在正常的工作流程中,我会克隆一个仓库(git clone something,进行更改,然后git push,这将默认将我的主分支推送到远程跟踪分支origin / master,对吗?这与什么有什么不同?在上面的链接中描述了什么?

正如我在顶部所描述的那样,我可以做git checkout origin/master,这使我处于"分离HEAD"状态,但没有创建新分支就无法真正做出任何改变,因此我无法修改远程跟踪分支因此造成混乱。

如果您回答这个问题,那么我原来对用户不应该修改远程跟踪分支的问题可能会变得清晰。

1 个答案:

答案 0 :(得分:0)

实际上,我认为你已经回答了自己的问题。如果您尝试签出远程分支,请执行以下操作:

git checkout origin/master

你将处于“独立头”状态。虽然您可以进行其他提交,但是没有本地引用它们,您将无法推送您的更改,并且您可能最终会丢失您的工作(通过切换到另一个分支并失去对您所做的提交的访问权限)在独立的头上。)

这不是一个可以恢复的情况,但新手用户很容易感到困惑。

这就是为什么你不应该修改远程跟踪分支。