(我正在使用SourceTree作为我的Git工具,使用Beyond Compare解决合并冲突,并使用Eclipse作为Java IDE。)
冲突非常复杂,以至于我无法在合并工具中解决冲突,因此必须手动解决(跨多个文件)。
理想情况下,我只想获取我的代码版本,查看“超越比较”中的冲突,并以此来建议我在Eclipse中所做的更改。
不起作用的东西:
我以错误的方式走这条路吗?我应该使用其他策略来解决冲突吗?在编辑文件的特定版本时,是否可以使用Git或BC4的功能单独保存冲突信息?
答案 0 :(得分:1)
我发现某些可行的方法(受Stun Brick的建议启发):
开始合并,以便生成LOCAL,BASE和REMOTE文件。
将这些文件移到单独的目录中。
通过获取本地副本来解决合并(在SourceTree中:解决冲突->使用Mine解决。在Git中:git checkout --ours PATH/FILE
)。
在Eclipse中打开文件的本地版本。
在BC4中打开LOCAL,BASE和REMOTE文件。
现在,我可以在Eclipse中编辑自己喜欢的内容,而不会影响BC4显示的内容。
答案 1 :(得分:1)
个人而言,我将THEIRS版本复制到Eclipse中,然后从那里重新引入本地更改。如果您的MINE包含大量更改,或重构了大量代码,则最好从此开始。
这可以通过以下方式完成:
这应该使您可以从一个可用的MINE或THEIRS开始,逐个添加。
这将使您仍然可以使用来自BC的建议来对变化最大的文件进行处理。由于git一次仅打开一个文件夹的外部合并,因此如果您需要,则必须手动在BC中打开其他文件。
然后,您可以手动将每个文件标记为“已解决”。