是否可以让 git difftool 命令打开目录比较更改的文件和暂存/检查的文件?
所以理想情况下,如果 2 个文件已更改,它们将是唯一显示的 2 个,但在目录比较中。
我已经阅读了有关让 git 并行提供所有文件差异的帖子,因此 BeyondCompare 之类的工具在选项卡中包含所有差异,但我对此并不满意!
可以将已更改文件的副本从暂存/签入文件中提取到临时文件夹中,然后将其打开。那是唯一的选择吗?
是否可以让 git difftool 命令打开目录比较更改的文件和暂存/检查的文件?
所以理想情况下,如果 2 个文件已更改,它们将是唯一显示的 2 个,但在目录比较中。
我已经阅读了有关让 git 并行提供所有文件差异的帖子,因此 BeyondCompare 之类的工具在选项卡中包含所有差异,但我对此并不满意!
可以将已更改文件的副本从暂存/签入文件中提取到临时文件夹中,然后将其打开。那是唯一的选择吗?
2012 年 6 月更新(两年半后):
这(比较目录而不是逐个文件)似乎很快就会可用:
请参阅[ANNOUNCE] Git 1.7.11.rc1:
”
git difftool
“学习了“--dir-diff
”选项来生成外部差异工具,该工具可以在填充两个临时目录后一次比较两个目录层次结构,而不是每个文件对运行一次外部工具的实例。
请参阅“补丁difftool
:教difftool
处理目录差异”
原始答案(2010 年 1 月)
可以将已更改文件的副本从暂存/签入文件中提取到临时文件夹中,然后将其打开。那是唯一的选择吗?
基本上是的:
您的 difftool 脚本将:
你有这个问题的第一个例子。
我总是使用--dirstat=files
:
rudie@devver:virenze$ git diff --dirstat=files
4.1% modules/custom/virenze_conversations/
7.0% modules/custom/virenze_crs/
8.3% modules/custom/
这意味着我已经删除了 dirsvirenze_conversations
和virenze_crs
in custom
。(我不知道百分比是什么意思......)
您可能可以使用所有常规diff
选项:--cached
、分支名称等。