Cornerstone 3 添加外部diff工具

开发 开发工具
Mac上的svn工具Cornerstone的diff工具十分不好用,并且比对不精确,所以想在Cornerstone内调用第三方diff工具。个人使用DiffFork进行比对。

 因Mac上的svn工具Cornerstone的diff工具十分不好用,并且比对不精确,所以想在Cornerstone内调用第三方diff工具。个人使用DiffFork进行比对。

DiffFork还提供shell方式打开软件可以软链到/usr/local/bin/difffork

但是我通过shell方式打开后是生成了2个比对窗口,2个文件没能在一起比对,所以使用了applescript方式。

但是BeyondCompare可以通过shell方式正确打开,但是Mac下的BeyondCompare对中文不友好所以就用DiffFork了。

shell调用方式:

  1. #!/bin/bash 
  2.  
  3. original_path="$1" 
  4. modified_path="$3" 
  5.  
  6. /usr/local/bin/bcompare "$original_path" "$modified_path" 

DiffFork提供的applescript调用示例:

  1. (* 
  2. diff v: Diff 
  3.  diff item : the old item. 
  4.  against item : the new item. 
  5. *) 
  6.  
  7. set theOld to (choose file with prompt "Select Old:"
  8. set theNew to (choose file with prompt "Select New:"
  9.  
  10. tell application "DiffFork" 
  11.  activate 
  12.  diff theOld against theNew 
  13. end tell 

因为Cornerstone的外部工具只支持*.sh的所以修改了DiffFork提供的applescript以shell方式打开。

  1. #!/bin/bash 
  2.  
  3. osascript -e 'tell application "DiffFork"' -e "activate" -e "diff \"$1\" against \"$3\"" -e 'end tell' 

下面是BeyondCompare的调用方式:

  1. #!/bin/bash 
  2.  
  3. original_path="$1" 
  4. modified_path="$3" 
  5.  
  6. /usr/local/bin/bcompare "$original_path" "$modified_path" 

【本文是51CTO专栏作者张勇波的原创文章,转载请通过51CTO获取作者授权】

责任编辑:武晓燕 来源: 上下求索的Z先生博客
相关推荐

2013-06-21 16:49:22

惠普世界之旅

2012-02-17 13:39:03

CornerstoneAndroid平板

2020-08-24 10:27:24

Tableau

2011-08-12 09:23:11

diff中文man

2015-07-22 14:59:31

2023-11-03 07:25:56

语言模型知识图谱

2013-04-25 10:03:07

unity3D手机游戏引擎

2013-11-26 11:08:23

Linux命令diff

2009-12-08 14:02:25

Windows 7小工

2020-07-09 08:09:21

Linuxdiff命令

2017-06-05 11:23:45

LinuxDiff和Meld工具

2021-07-29 11:30:41

SaaS云数据仓库MaxCompute

2022-06-28 15:13:12

Vuediff 算法

2020-04-03 14:25:55

diff Meld工具

2021-12-23 15:23:42

diffpatchLinux

2010-03-18 16:38:39

Linux命令

2018-09-27 11:25:07

开源日志聚合

2024-12-05 09:45:25

Reactdiff 算法前端开发

2021-08-31 07:02:20

Diff算法DOM

2022-04-15 08:07:21

ReactDiff算法
点赞
收藏

51CTO技术栈公众号