我想将一个分支中的所有更改推送到另一个分支(现有分支)而不进行合并。
例如,考虑两个分支branch1和branch2。branch1和branch2都跟踪origin/branch1和origin/branch2。
Branch1有提交A、B、C、D、E、F,而Branch2有提交A、B、D、F。
我想让Branch2完全像branch1一样。使用Cherry-picking和Merging会导致冲突,我不想浪费时间去解决这些冲突,因为我只是盲目地将branch1复制到branch2。
我可以通过以下方式实现:
git checkout branch1 # Moves to branch1
git push origin :branch2 # Deletes remote branch origin/branch2
git branch -d branch2 # Deletes the local copy of this branch
git pull
git push origin HEAD:branch2 # Creates new branch in remote repository from the HEAD at local branch branch1
有没有一种更好的方法通过合并命令中的一些--force选项来完成这个操作。我不想每次都删除分支,只是为了创建一个同名的新分支。
谢谢
git checkout branch2
git reset --hard branch1
这样的操作对你来说是一个选项吗? - Melebius