交换主服务器和功能分支

Dog*_*her 26 git branch

我们发现自己处于主人有新功能工作的情况,而feature1(分支主人)是稳定的主人.我们怎样才能改变事物以便他们"交易场所"?即,feature1成为主人,主人成为newfeaturebranch

我发现了几个类似的SO问题,但在这些情况下,他们不再关心旧的主提交.在这里,我们希望保留当前的master作为新的newfeaturebranch.

我想过一种方法可以做到这一点:

  1. 从当前主数据库创建newfeature分支.
  2. 主服务器恢复/删除提交返回到feature1的分支点.
  3. feature1合并为master.
  4. 删除分支功能1.

pok*_*oke 33

您可以重命名分支:

git branch -m master newfeaturebranch
git branch -m feature1 master
Run Code Online (Sandbox Code Playgroud)


小智 7

我从poke的解决方案开始,但是推送后,本地分支仍在跟踪旧的远程分支。为了跟踪正确的分支,我只需添加-u推送选项。

git branch -m master newfeaturebranch
git branch -m feature1 master

git push -uf origin master
git push -u origin newfeaturebranch
Run Code Online (Sandbox Code Playgroud)

也可以通过首先推送然后调整正确的分支来跟踪来分两步完成:

git push -f origin master
git push origin newfeaturebranch

git branch -u origin/master master
git branch -u origin/newfeaturebranch newfeaturebranch
Run Code Online (Sandbox Code Playgroud)