如何让git分支成为新的主人?

时间:2017-02-12 20:07:29

标签: git git-branch

几天前,我使用以下方法创建了一个新的git分支:

git checkout -b release-1_5

自创建新分支以来,我做了其他更改&承诺。

我是唯一的开发人员,在此期间没有对实际的“主人”进行任何更改。我想让“release-1_5”分支的当前状态成为新的master,并让'master'成为新的工作(HEAD?)分支,这样如果我后来做了类似的事情:

git checkout -b release-1_6

它将创建一个从主

分支的新分支

我知道我可能只是继续做“git checkout -b {new-branch-name}”(创建一个线性分支的分支(-of-a-branch [-...]),但我很确定这会搞砸Git的类似地铁的分支图。

如果重要的话,目前,回购是完全本地的,所以没有拉/推或起源担心。

3 个答案:

答案 0 :(得分:3)

您正在描述将release-1_5简单合并回master。由于master没有新的提交,因此它将是一个快速合并。

$ git checkout master
$ git merge release-1_5

就是这样。如果愿意,您可以选择删除release-1_5分支。

答案 1 :(得分:1)

我不会删除分支 您要做的只是将最新提交从release-1_5移至master

git checkout master
git merge release-1_5
git checkout master
git reset --hard HEAD~3 # Go back 3 commits. You *will* lose uncommitted work.

答案 2 :(得分:0)

希望这有帮助

git checkout release-1_5
git merge --strategy=ours master  # This will keep content of branch
git checkout master
git merge release-1_5             # this will fast-forward master to the merge