svn导出文件进行比较-阿里云开发者社区

开发者社区> 人工智能> 正文
登录阅读全文

svn导出文件进行比较

简介: 之前有介绍svn log 的命令,即可导出版本A~B之间所有的修改动作,然后复制出相应的文件(中间有一个算法去处理每一个动作,然后得到最终需要导出的文件列表,svn常用动作有:Modified、Added、Deleted、Replacing、Conflicted、Merged、Existed等)。

之前有介绍svn log 的命令,即可导出版本A~B之间所有的修改动作,然后复制出相应的文件(中间有一个算法去处理每一个动作,然后得到最终需要导出的文件列表,svn常用动作有:Modified、Added、Deleted、Replacing、Conflicted、Merged、Existed等)。

 

SVN客户端的版本比较,我仔细研究了一下它的实现:根据选择的版本号,下载该版本号以及当前本地版本号的二个资源文件,存放于一个临时文件夹中,然后调用用TortoiseMerge,传入二个文件的路径,即可进行比较了。

 

svn diff 命令仅仅是在DOS窗口里输出,没有GUI界面那么直观,TortoiseMerge工具弥补了这一点,当然还有其它例如:WinMerge也有类似的功能。

 

关于文件的导出,目前我尝试了二种方案:

1、svn cat (输出指定的文件)

2、svn export (导出指定的文件)

最新的版本直接使用HEAD替代即可,用法:

>svn cat -r HEAD https://xx.xml >d:\x.xml

>svn export -r verNum https://xx.xml  d:\xx.xml (svn export –r num url path)

 

导出功能实现了,比较工具就很容易了

>TortoiseMerge /base:"D:\x.xml" /theirs:"d:\xx.xml"

 

【参考】:

svn export -导出

svn status

TortoiseMerge-1.6.6-en.pdf

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
人工智能
使用钉钉扫一扫加入圈子
+ 订阅

了解行业+人工智能最先进的技术和实践,参与行业+人工智能实践项目

其他文章