git difftool --dir-diff:如何复制回更改后的文件

3
1个回答

6

命令git difftool --dir-diff无法像git-diffall的--copy-back选项一样将我在difftool中更改的代码复制回去。

只要你正在对比的一侧是工作树,修改后的文件就会被复制回来。

git difftool --dir-diff other-commit

此命令将在左侧显示other-commit,在右侧显示当前工作树中修改的文件。工具退出后,右侧的文件将被复制回您的工作树。(已测试v1.8.3.2版本)。

只有当它们最初是您的工作副本时,将它们拷贝回来才有意义:从任意差异中拷贝文件会覆盖您的工作树。但是,如果您希望您的工作树是commit2版本,以比较它与commit1并使这些更改保留在您的树中,您可以首先检出该版本以明确表示:

git checkout commit2 -- specific-file
git difftool --dir-diff commit1

嗯,那很奇怪,在我的电脑上,它没有复制回来,我再次确认一下!你用的操作系统是什么?Windows? 我使用的是Win7,并且msysgit的版本是1.8.3-preview20130601,使用Beyond Compare作为我的差异工具。 - HaveF
1
我相信你指出的补丁已经解决了这个问题,并在88f90f8286中合并,该版本首次发布于v1.8.3.2 - Joe
你是对的。我更新到version 1.9.0-preview20140217之后,一切都很好,谢谢! - HaveF

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接