使用远程跟踪分支覆盖本地分支(分支已分叉)

时间:2015-10-18 16:54:49

标签: git git-branch git-remote

我使用以下命令创建了一个名为 my-4.3.y 的新分支 (注意: my-4.3.y 设置为从原点跟踪远程分支 4.3.y ):

git checkout -b my-4.3.y origin/4.3.y

检查完毕后,我没有在 my-4.3.y 分支上工作。 现在,几天后,当我跑:

git status

它告诉我 my-4.3.y origin / 4.3.y 分歧

我不关心分支机构在哪里以及为何分歧,我不想合并 远程分支进入我的。我只想让我的分支与遥控器相等 再次分支。

所以,我正在做的是:(1)结账一些其他分支(2)删除 my-4.3.y 和(3)再次检查出来:

git checkout some_other_branch
git branch -D my-4.3.y
git checkout -b my-4.3.y origin/4.3.y

有更简单的方法吗?

1 个答案:

答案 0 :(得分:2)

您可以使用git reset --hard将当前签出的分支强制为您想要的任意点。

注意:使用--hard工作目录不安全,并且会丢弃您所做的任何更改。

对于更新到跟踪分支的特定情况,您可以使用@{u}指定上游

git reset --hard @{u}

通常,您可以传入任何分支引用或Git解析为提交的任何其他内容,例如

git reset --hard origin/4.3.y