我在Ubuntu 10.04上使用GIT作为我的DVCS。只需运行:
meld .
当前工作目录中的非常棒...显示工作文件夹中最后一次提交的差异。
我希望能够在其他情况下做同样的事情。假设我想在获取远程分支后查看更改?我该怎么办?我怎样才能看看两个地方分支机构之间的差异......我很想知道是否有一种相对简单的方法可以做到这一点。
THX。
答案 0 :(得分:5)
如果你喜欢meld用于比较文件和解析合并,你应该将配置选项diff.tool
和merge.tool
设置为meld
,例如
git config diff.tool meld
然后,您可以使用git difftool master origin/master
查看本地master
与master
中origin
最近获取的git fetch
版本之间的差异。但是,这只会一次显示一个文件的差异 - 您必须退出meld并按Enter键以查看下一个文件中的更改。如果你想看到融合中两个分支之间的所有差异,使用它的递归视图,我恐怕没有一种单行方式可以做到这一点。
然而,我写了一个简短的脚本来回答一个非常相似的问题,它带有两个引用(例如两个分支),将它们解压缩到临时目录并运行以便比较两个:
无论如何,如果您刚刚运行master
,则可以使用该脚本比较origin
与meld-compare-refs.py master origin/master
版本之间的差异:
meld-compare-refs.py master topic1
...或者比较两个本地分支:
{{1}}