diff程序BeyondCompare有一个目录比较功能,您可以在其中选择两个文件夹并让它对这些文件夹中具有相同文件名的所有文件进行并排比较,然后查看它标记的单个文件显示差异。 TortoiseSVN有一种方法可以在目录的两个版本或旧版本和工作副本之间运行此目录比较,这有时非常棒。
不幸的是,并非一切都在SVN中。我有一个Git版本的项目,其中包含一个包含100多个自动生成文件的大文件夹。他们最近重新生成了,TortoiseGit告诉我,他们中的每一个都被改变了。然而,当我区分其中的一些时,我所看到的只是无害且无关紧要的空白变化。在那里可能存在很少的变化并不是不可能的,但是我不想手动重复每一个变化。
有什么方法可以让TortoiseGit为我发送一个比较BC的目录,所以我可以让它将旧版本与我的工作副本进行比较而忽略空格(它可以做到这一点)然后我就可以确定这个文件夹中是否有任何相关的更改,或者我是否可以恢复整个文件?
答案 0 :(得分:0)
答案 1 :(得分:0)
我遇到了同样的问题。不幸的是,正如Yue Lin Ho所说,TortoiseGit没有直接在GUI中使用它。但是,如果你有TortoiseGit,你安装了一些版本的命令行Git。因此,您可以从命令行调用BeyondCompare。
以下说明假设您使用的是Git 2.2.0或更高版本
首先,您必须将BC设置为差异工具:
git config --global merge.tool bc
git config --global mergetool.bc.path "c:/Program Files (x86)/Beyond Compare 4/bcomp.exe"
(请注意,显示默认的Windows路径。如果使用不同的操作系统或者如果您在Windows上安装了便携式BC版本,则路径可能会有所不同。请确保使用实际路径指向您的副本BC)
然后你可以通过在你的Git项目的文件夹中运行以下命令来调用Git中的BC文件夹比较:
git difftool --dir-diff
答案 2 :(得分:0)
您可以尝试使用临时结帐的其他方法:
将旧版本签出到新目录。 然后使用超出比较的标准文件夹比较来比较新目录和工作目录。
您可以define unimportant text过滤不相关的空白更改。
完成比较后,您可以删除旧版本的目录。