繁体   English   中英

总是在冲突中使用合并分支的版本

[英]Always use version from merged branch on conflicts

目前我正在一个功能分支中工作,该分支很快将合并回master。 我最近尝试过,但遇到了一些合并冲突,我必须手动修复。

那么,是否可以提前告诉 git 始终使用合并分支中的版本以避免合并冲突? 在这种情况下,我手动修复了冲突,但总是从合并的分支中选择版本,这样可以节省一些繁琐的工作。

您可以使用以下命令在 git 中执行此操作,假设该feature是您的功能分支的名称:

git merge -s recursive -X theirs feature

这表示使用“递归”合并策略,但使用“他们的”选项。 这意味着当发生冲突时,它将通过从功能分支而不是您当前的分支中获取大块的版本来自动解决。 (请注意,这与“他们的”合并策略完全不同,后者现已从 git 中删除。)

此功能在 git v1.7.0 中引入。

您不能使用递归的“我们的”策略。 它会省略您没有冲突的更改。

您可以编写脚本获取冲突文件的文件名,然后执行 git checkout --ours -- filename 后跟 git 添加文件名。

如果您一遍又一遍地遇到相同的冲突,请打开 rerere,这可能就足够了,因此您不必解决冲突。

希望这可以帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM