如何让 git 分支成为新的 master?
How to make a git branch the new master?
几天前,我使用以下方法创建了一个新的 git 分支:
git checkout -b release-1_5
自创建该新分支以来,我对其进行了额外的更改和提交。
我是唯一的开发者,在此期间没有对实际 'master' 进行任何更改。我想让 "release-1_5" 分支的当前状态成为新的主分支,并使 'master' 成为新的工作(HEAD?)分支,这样如果我以后做类似的事情:
git checkout -b release-1_6
它将创建一个从 master 分支出来的新分支
我知道我可能会继续做 "git checkout -b {new-branch-name}"(创建一个分支的线性分支(-of-a-branch[-...]),但我很确定那会搞砸 Git 类似地铁的分支图。
目前,回购完全是本地的,因此无需担心 pulling/pushing 或来源。
您描述的是 release-1_5
回到 master
的简单合并。由于 master
没有新的提交,它将是 fast-forward 合并。
$ git checkout master
$ git merge release-1_5
就是这样。如果愿意,您可以选择删除 release-1_5
分支。
我不会玩删除分支。
你想要做的只是将最新提交从 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.
希望对您有所帮助
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
几天前,我使用以下方法创建了一个新的 git 分支:
git checkout -b release-1_5
自创建该新分支以来,我对其进行了额外的更改和提交。
我是唯一的开发者,在此期间没有对实际 'master' 进行任何更改。我想让 "release-1_5" 分支的当前状态成为新的主分支,并使 'master' 成为新的工作(HEAD?)分支,这样如果我以后做类似的事情:
git checkout -b release-1_6
它将创建一个从 master 分支出来的新分支
我知道我可能会继续做 "git checkout -b {new-branch-name}"(创建一个分支的线性分支(-of-a-branch[-...]),但我很确定那会搞砸 Git 类似地铁的分支图。
目前,回购完全是本地的,因此无需担心 pulling/pushing 或来源。
您描述的是 release-1_5
回到 master
的简单合并。由于 master
没有新的提交,它将是 fast-forward 合并。
$ git checkout master
$ git merge release-1_5
就是这样。如果愿意,您可以选择删除 release-1_5
分支。
我不会玩删除分支。
你想要做的只是将最新提交从 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.
希望对您有所帮助
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