gpt4 book ai didi

Git:如何正确 merge 两个功能完全不同的分支?

转载 作者:IT王子 更新时间:2023-10-29 01:02:13 24 4
gpt4 key购买 nike

想象这样一种情况,您有同一个项目的两个分支,第一个分支的一部分在另一个分支上进行了显着重构。但是有一段时间你需要保持两个分支的功能,所以你正在对它们进行错误修复和关键功能添加,有时是以不对称的方式。在某些时候,您必须将重构的分支 merge 到原始分支上。在这种情况下使用什么技术最好?是否还有可能保持历史清白?

但更重要的是,在这种情况下我的初始策略应该是什么?

最佳答案

由于任务是简单地使用另一个分支而不是 master,您可以简单地完全删除 master 分支或将其重命名为 - legacy,然后取另一个分支并将其重命名为 master。而已。以下是您可能需要执行以在本地和 GitHub 上实现目标的实际命令:

git branch -m master legacy               # rename local master to legacy
git checkout legacy
git branch -m another_branch master # another_branch will be our new master

本地我们现在完成了。但是,您不能简单地删除 GitHub 上的 master 分支。您需要先将另一个分支作为默认分支。这可以在存储库 Settings > Default Branch 中完成。执行此操作后,您可以继续:

git push origin :master                   # remove master on GitHub
git push origin master # push out our new master branch
git push origin legacy # push our legacy branch too

然后返回到 Settings > Default Branch 并将默认分支切换回 master。此外,您可以删除在迁移过程中可能创建的所有额外分支。

或者,如果您希望将所有操作保存在历史记录中,请检查正确答案 here .

关于Git:如何正确 merge 两个功能完全不同的分支?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14243977/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com