位置: IT常识 - 正文

使用vimdiff代替svn diff的查看代码工具(vim diff对比)

编辑:rootadmin
在linux下,直接使用svn diff命令查看代码的修改是很吃力的,于是在网上搜索到了一个比较好的解决方案,就是让vimdiff作为svn diff的查看代码工具,尤其对于习惯用vim的人来说真的是... 20-07-12

推荐整理分享使用vimdiff代替svn diff的查看代码工具(vim diff对比),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:vim替换命令怎么用,vimdiff用法,vim替换命令怎么用,vim sed替换,vimdiff用法,vim替代品,vim esc 替代,vim替代工具,内容如对您有帮助,希望把文章链接给更多的朋友!

在linux下,直接使用svn diff命令查看代码的修改是很吃力的,于是在网上搜索到了一个比较好的解决方案,就是让vimdiff作为svn diff的查看代码工具,尤其对于习惯用vim的人来说真的是很方便。

当使用svn diff命令比较某个文件的修改前后时,例如执行以下命令:

$ svn diff -r4420 ngx_http_limit_req_module.c

那么实际会向默认的diff程序发送如下命令:

-u -L ngx_http_limit_req_module.c (revision 4420) -L ngx_http_limit_req_module.c (working copy) .svn/tmp/tempfile.tmp ngx_http_limit_req_module.c

svn官方FAQ中对于svn diff的解释(中文、英文):

当使用一个外部的diff命令时,Subversion会生成一个非常复杂的命令行。第一个参数就是具体的--diff-cmd,然后就是具体的 --extensions (尽管使用空白的 --符号时会忽略扩展),或者如果没有指定--extensions或者--extensions为空的话,就加上‘-u’参数。第三和第四个参 数,Subversion会传递一个“-L”还有第一个文件的标签(例如,“"project_issues.html (revision 11209)”)。第五个和第六个就是另一个“-L”和第二个文件的标签。第七和第八个参数分别是第一个和第二个文件的名称(例 如,“.svn/text-base/project_issues.html.svn-base”和“.svn/tmp /project_issues.html.tmp”)。

了解了diff的内部调用命令,那么实现用vimdiff作为diff程序就比较简单了。

vimdiff在比较2个文件时,只要知道这2个文件的路径及文件名就可以了,也就是上述diff内部命令中的第7个和第8个2个参数;

使用vimdiff代替svn diff的查看代码工具(vim diff对比)

同时也说明了由于diff内部命令的参数过多导致用--diff-cmd直接调用vimdiff是行不通的(命令如下)。

$ svn diff --diff-cmd vimdiff -r4420 ngx_http_limit_req_module.c

所以,我们需要自己另外写一个脚本,让这个脚本作为diff程序,获得diff的内部命令,然后只取其中的第7个和第8个参数,再传给vimdiff,这样就能解决参数多的问题了。

脚本(diffwrap.sh)如下:

#!/bin/sh# 去掉前5个参数shift 5# 使用vimdiff比较vimdiff "$@"

另外,svn还提供了在配置文件中修改diff默认程序的功能,这样就不用每次使用svn diff时再指定--diff-cmd了。

修改~/.subversion/config,找到如下配置行:

# diff-cmd = diff_program (diff, gdiff, etc.)

将上面那个脚本的路径添加进去就行,例如修改为

diff-cmd = /usr/local/bin/diffwrap.sh

以后,使用svn diff命令就会默认打开vimdiff比较2个文件了。

效果图:

到此这篇关于使用vimdiff代替svn diff的查看代码工具的文章就介绍到这了,更多相关vimdiff 代码比较内容请搜索电脑学习网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持电脑学习网!

本文链接地址:https://www.jiuchutong.com/zhishi/277779.html 转载请保留说明!

上一篇:电压是什么?(电压是什么量)

下一篇:企业网管误区系统安全防护措施有哪些?(企业网管出路)

  • 国家企业信用信息公示系统密码是什么作用

    国家企业信用信息公示系统密码是什么作用

  • 惠普打印机彩色墨盒灯闪烁(惠普打印机彩色灯闪烁,不能打印)

    惠普打印机彩色墨盒灯闪烁(惠普打印机彩色灯闪烁,不能打印)

  • 腾讯会议手机共享屏幕没有声音(腾讯会议手机共享屏幕声音)

    腾讯会议手机共享屏幕没有声音(腾讯会议手机共享屏幕声音)

  • 手机恢复出厂设置是不是什么都没有了(手机恢复出厂设置好吗)

    手机恢复出厂设置是不是什么都没有了(手机恢复出厂设置好吗)

  • 为什么IE显示无法打开此网页(家字取名男孩名字)

    为什么IE显示无法打开此网页(家字取名男孩名字)

  • 华为手机静音了怎么调回来(华为手机静音了闹钟还会响吗)

    华为手机静音了怎么调回来(华为手机静音了闹钟还会响吗)

  • 抖音号注销后工会是不是自动退出(抖音号注销工会)

    抖音号注销后工会是不是自动退出(抖音号注销工会)

  • vivos6是双卡双待吗(vivos6是双卡吗?)

    vivos6是双卡双待吗(vivos6是双卡吗?)

  • 超清视效是什么意思(超清视效可以适用于哪里?)

    超清视效是什么意思(超清视效可以适用于哪里?)

  • 手机屏幕出现彩色斑点(手机屏幕出现彩色条纹是内屏坏了嘛)

    手机屏幕出现彩色斑点(手机屏幕出现彩色条纹是内屏坏了嘛)

  • 荣耀magic2屏幕刷新率(荣耀magic2屏幕刷新率怎么调)

    荣耀magic2屏幕刷新率(荣耀magic2屏幕刷新率怎么调)

  • 天猫保价规则(天猫保价规则是按收货7天)

    天猫保价规则(天猫保价规则是按收货7天)

  • oppo手机开关机键失灵怎么办(oppo手机开关机键失灵是怎么回事)

    oppo手机开关机键失灵怎么办(oppo手机开关机键失灵是怎么回事)

  • 微信群最长可以发几分钟的视频(微信群最长可以发多长的视频)

    微信群最长可以发几分钟的视频(微信群最长可以发多长的视频)

  • 哔哩哔哩电视大会员和大会员的区别(bilibili大电视)

    哔哩哔哩电视大会员和大会员的区别(bilibili大电视)

  • word如何设置英文字体(word如何设置英文字体格式)

    word如何设置英文字体(word如何设置英文字体格式)

  • 怎么清手机内存垃圾清理(怎么清手机内存垃圾)

    怎么清手机内存垃圾清理(怎么清手机内存垃圾)

  • 能刷快手直播间人数吗(刷快手直播间礼物软件)

    能刷快手直播间人数吗(刷快手直播间礼物软件)

  • 微博我的访问记录怎么删除不了(微博我的访问记录仅自己可见什么意思)

    微博我的访问记录怎么删除不了(微博我的访问记录仅自己可见什么意思)

  • 三星s7自带微信分身吗(三星s7有微信分身吗)

    三星s7自带微信分身吗(三星s7有微信分身吗)

  • 美易怎么申请退款(美易怎么申请退款退货)

    美易怎么申请退款(美易怎么申请退款退货)

  • vivos1是否有防水(vivos1防水等级)

    vivos1是否有防水(vivos1防水等级)

  • 抖音长视频怎么保存到本地(抖音长视频怎么下载到手机)

    抖音长视频怎么保存到本地(抖音长视频怎么下载到手机)

  • 脉脉如何不让别人看到(脉脉如何不让本单位的人看到)

    脉脉如何不让别人看到(脉脉如何不让本单位的人看到)

  • 监控设备离线怎样恢复(监控设备离线怎么回事儿)

    监控设备离线怎样恢复(监控设备离线怎么回事儿)

  • 产权式酒店规定
  • 所得税的记账凭证
  • 出口退税率怎么算
  • 小规模纳税人劳务费税率1%
  • 工资不纳税项目
  • 严格财务报销程序
  • 贷款公司股权转让合法吗
  • 住宿发票税率有哪4种
  • 房地产企业预缴增值税怎么计算
  • 设备维修劳务费税率
  • 物业公司支付出的费用
  • 计提企业所得税怎么计算
  • 堤围内的土地性质
  • 小规模纳税人开专票
  • 金税盘管理费用怎么结转
  • 一般纳税人能否享受残保金优惠
  • 输入开票码开具电子发票
  • 资本金结汇资金用途
  • 机顶盒包括
  • 商誉在报表中如何填列
  • 公司账户怎么走账
  • 款已付没有发票就入账
  • 小规模纳税人如何开专票
  • 怎么让别人无法访问我的qq空间
  • 以前年度损益调整怎么做账
  • 销售出库未开票怎么入账
  • 软件开发公司账务怎么做
  • 贸易公司成本怎么计算
  • linux中gedit命令
  • PHP:xml_set_character_data_handler()的用法_XML解析器函数
  • php代码封装成dll
  • Windows11如何使用管理员账号登录
  • 税款缴纳期初未缴税额
  • 不知道哟
  • PHP:php_check_syntax()的用法_misc函数
  • 资产减值的会计政策
  • 应付现金股利通过
  • 划拨建设用地使用权没有使用期限的限制
  • tokenall
  • 计算机视角技术
  • 所得税预缴申报表怎么填
  • 手工帐月末结转会计分录
  • 接待客人的本地人叫什么
  • 网上变更财务负责人
  • 2022年最新版微信
  • 专项附加扣除中住房租金扣除所指的工作城市范围包括
  • 对公户单笔转账有限额吗
  • 税前弥补以前年度亏损对递延所得税影响
  • 汇总记账凭证账务处理
  • 个人所得税纳税记录怎么查询
  • 安装费用怎么做分录
  • 速动比率和流动比率的关系
  • 出口抵减内销产品应纳税额在借方
  • 环保局检查锅炉房都查什么
  • 什么是个人独资企业营业执照
  • php+mysql prepare 与普通查询的性能对比实例讲解
  • Ubuntu16.04 server下配置MySQL,并开启远程连接的方法
  • 安装软件提示windows 无法访问指定设备,路径或文件
  • 联想yoga升级win11
  • 用虚拟光驱安装系统教程
  • 还原精灵使用教程
  • Win10自带输入法打不出中文
  • 如何快速恢复么
  • ubuntu 18.04怎么用
  • win10 rs1是什么版本
  • psimsvc.exe - psimsvc是什么进程 有什么用
  • win8电脑设置打不开怎么办
  • windows10 14393版本
  • win10按prtsc没反应
  • 一个简单的灵魂福楼拜
  • dos 到指定目录
  • android实现简单的计算机界面
  • javascript definitive guide
  • js怎么定义类
  • javascript概述
  • 江西省电子税务局公众查询
  • 自然人扣缴端重置密码操作流程
  • 如何打印纳税申报表
  • 税务局发票邮寄回来怎么读入?
  • 深圳国税税发票在哪里开
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设