【发布时间】:2020-02-20 08:40:38
【问题描述】:
我有一个master 和一个分支A。
我正在尝试将更改从 A 更改为 master。
但是,存在合并冲突。
目前,当我使用git merge或类似的东西(例如,IntelliJ内置的合并冲突解决器或SourceTree + KDiff3)时,当有冲突时,我可以修复它们。
但是,我所做的修复是在 master 分支上完成的。
这意味着使用受保护的远程 master(即通过 GitHub)无法直接推送到 master,我实际上无法提交合并冲突修复。
有没有办法将编辑提交到A,然后将它们完全合并到master?
我可以使用 GitHub 的合并冲突编辑器获得此行为 - 当您使用它时,它会将更改提交到分支 A,然后您仍然需要进行代码审查等才能提交到 master。但理想情况下,我希望能够在我的 IDE 中解决合并冲突。
编辑:进一步搜索表明我实际上可以将master 合并到A,解决过程中的冲突,然后将A 合并回master。谁能确认这听起来是否正确?
【问题讨论】:
-
如果您的修复是在 master 分支上进行的,那么您当前的 HEAD 就是 master。我想您必须先结帐到分支 A,然后再进行冲突更改。
-
您的最新评论听起来不错:1)
git checkout A && git merge master(这会将master合并为A); 2) 解决冲突; 3)git add <what needs to be committed> && git commit; 4)git checkout master && git merge A;希望对你有帮助 -
谢谢,刚刚试过,效果很好!如果您愿意,请随时发布作为答案。