默认的git差异行为是依次打开每个差异文件(等待上一个文件关闭后再打开下一个文件)。

我正在寻找一种方法来打开所有的文件一次-在BeyondCompare例如,这将打开所有的文件在选项卡内同一BC窗口。

这将使审查一组复杂的变更更加容易;在差异文件之间来回切换,忽略不重要的文件。


当前回答

Git meld => https://github.com/wmanley/git-meld是一个很棒的脚本,它将在一个窗口中打开所有文件的整齐差异。

其他回答

写了一个小工具,打开所有文件作为标签页在vim。

https://github.com/balki/vimtabdiff

Git meld => https://github.com/wmanley/git-meld是一个很棒的脚本,它将在一个窗口中打开所有文件的整齐差异。

对于那些有兴趣在Mac OS X和Araxis上使用git-diffall的人,我在github上分叉了git-diffall项目,并添加了一个包装Araxis合并命令的AppleScript。注意:这是Mac OS X的Araxis Merge附带的araxisgitdiff文件的一个稍微修改的克隆。

https://github.com/sorens/git-diffall

我确实找到了这个方法(GitDiff.bat和GitDiff.rb),它将文件复制到旧/新临时dirs,然后对它们进行文件夹比较。

但是我宁愿直接查看工作文件(从工作目录),因为BeyondCompare有一个方便的功能,可以在diff窗口内编辑文件,这对于快速清理非常好。

编辑:这里有一个类似的方法来回应我在git邮件列表上的问题。

注意这里Araxis Merge有一个'-nowait'命令选项:

-nowait防止compare等待比较被关闭

也许这会返回一个立即退出码,可以工作,有人经历过吗?找不到类似的BeyondCompare选项…