Git:在合并期间获取我们的/他们的文件内容

时间:2017-06-26 07:27:31

标签: git

我知道我可以通过调用

获得我们/他们的状态
git checkout --ours/--theirs -- path/to/my/file.txt

但这会覆盖我工作树中的文件。如何在合并期间获取我们/他们的文件状态的文件内容而不覆盖工作树

2 个答案:

答案 0 :(得分:7)

enter image description here

RewriteEngine on

RewriteRule ^(.+)\.html/(.+)$ /$1.html?params=$2 [NC,L]

当触发合并冲突时,git show :1:file/path # base git show :2:file/path # ours git show :3:file/path # theirs 仍指向原始提交,HEAD指向尝试合并的提交,因此:

MERGE_HEAD

也可以使用,也许对用户更明确。

答案 1 :(得分:0)

当您调用时:

git merge-tool -- file/path

git(如果配置正确)将启动此工具以及所有有用的文件版本:current,theirs,ours,base(两个分支的常见assentor版本中的文件)。

有许多工具可帮助解决合并冲突:kdiff3meld 我最喜欢的是beyond compare(非免费试用 - 免费试用30个工作日 - 如果你不使用它,它不会减少试用天数)。 它有三种方式#34;视图,左侧顶部有4个子视图,ours位于右侧base的中间theirs,底部有合并结果。

找到最适合您的工具。