答案 0 :(得分:34)
微软刚刚添加了基于浏览器的合并。这可能会让你摆脱小冲突的困境。
并提供improved visualizations of the different scenarios as of Sprint 150。
您有两种方法可以解决冲突,反向集成来自目标分支的更改(创建其他合并提交),或者对目标分支进行rebase(这会使您的历史记录变得干净整洁)。
您需要在本地克隆repo,执行从目标分支到分支的合并,并将这些更改推送到存储库。 VSTS将检测更改并更新拉取请求。
-------o3 PR
/
---------o1-o2 target
因此将target (o2)
合并到PR
:
-------o3-o4 PR
/ /
---------o1----------o2 target
然后完成PR
-------o3-o4 PR
/ / \
---------o1----------o2--o5 target
或者,您可以在本地克隆repo,在最新版本的目标分支上重新绑定PR分支,从rebase解决所有问题并强制将更改推回PR分支。 VSTS将检测更改并更新拉取请求。
-------o3 PR
/
---------o1-o2 target
因此将o3
重新定义到o2
:
-------o3 PR
/
---------o1-o2 target
然后完成PR
(在下面的情况下使用快进合并):
---------o1-o2-o3 target
答案 1 :(得分:14)
答案 2 :(得分:4)
您可以通过@jessiehouwing执行上述技巧或使用新插件。 MicrosoftDevLabs发布了插件的链接以解决冲突。下面给出了插件的链接 https://marketplace.visualstudio.com/items?itemName=ms-devlabs.conflicts-tab
答案 3 :(得分:0)
此答案参考@metabuddy对@ sky91答案的评论
如果您的目标分支位于“ master”和“ master”分支中,并且您应用了不接受直接合并的策略?
注意:在请求请求中,“ master”是目标分支,“ x001”是源分支,这在“ master”和“ x001”分支之间存在冲突。
在这种情况下,@ sky91的解决方案将不起作用。为此,请按照以下步骤操作。