首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MacOS10.7上的图形多文件对比较

MacOS10.7上的图形多文件对比较
EN

Stack Overflow用户
提问于 2012-08-07 16:07:33
回答 10查看 50.2K关注 0票数 47

是否可以在Mac上以图形方式查看"svn“输出?

大多数图形化的diff程序允许您每次只查看一个文件。这是非常不方便的,当您使用svn,并已更改为10个文件。

对于Linux,我在"康帕尔“程序中找到了一个解决方案。我知道:

代码语言:javascript
复制
svn diff > diffOut; kompare diffOut

因此,我使用图形程序,并立即检查所有文件,就像它在图片上显示的那样。

对Mac OS?也是一样的吗?

P.S. "meld“程序似乎也这样做(或者它不做?),我已经尝试过安装它,但得到了一个错误。因此,我认为我无法在OSx 10.7下安装它。

EN

回答 10

Stack Overflow用户

回答已采纳

发布于 2012-08-14 01:41:17

  1. Mac操作系统有康帕尔。它是KDE的一部分,可以使用MacPorts获得它: sudo端口安装/Library/LaunchAgents/org.freedesktop.dbus-session.plist kdesdk4 launchctl加载-w -w导出PATH="/Applications/MacPorts/KDE4/kompare.app/Contents/MacOS:"$PATH 而且起作用了!
  2. Svn支持所谓的外部差异

要使用它,应该创建svn包装脚本,该脚本将接受"svn“命令返回的参数,并根据所需参数进行不同的调用。

下面是参数"svn diff“返回的示例:

代码语言:javascript
复制
-u -L code/Class1.h (revision 16518) -L code/Class1.h (working copy) code/.svn/text-base/Class1.h.svn-base code/Class1.h

开场白需要最后两次。因此,下一个bash 脚本将是合适的:

代码语言:javascript
复制
#!/bin/sh

if [ $# -lt 2 ]; then
    echo "usage: $0 [ignored args...] file1 file2" >&2
    exit 1
fi

# The last two arguments passed to this script are the paths to the files
# to diff.
while [ $# -gt 2 ]; do
    shift
done

exec opendiff $*

将此脚本放入svnwrapper.sh文件中。使文件可执行:

代码语言:javascript
复制
chmod +x svnwrapper.sh

并将其置于公共路径中,这将添加到$PATH变量中。现在,您可以使用

代码语言:javascript
复制
svn diff --diff-cmd=svnwrapper.sh

或者只需在~/..subversion/config文件中添加帮助部分:

代码语言:javascript
复制
diff-cmd = svnwrapper.sh
票数 3
EN

Stack Overflow用户

发布于 2012-08-07 16:11:04

你可以使用苹果的FileMerge工具,或者万花筒。这两种方法都具有命令行调用:

  • 若要打开FileMerge,请从Xcode内部安装命令行开发工具并使用opendiff
  • 要打开万花筒,请从万花筒内部安装其命令行工具,并使用ksdiff
票数 64
EN

Stack Overflow用户

发布于 2013-12-17 12:35:37

DiffMerge既是免费的,也是伟大的。也做了三方面的比较和合并。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11849918

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档