2011-05-18 52 views
1

所以我不得不从svn仓库对现场系统做一些大的更新,目标箱上没有svn,也没有可能获得它。从svn histroy生成一个非svn目标的补丁

这些更新可能涵盖来自多个svn用户的50多个修订/文件。

是否有任何应用程序可以从选择的修订中生成更新文件的树形结构输出? 希望这可以让我上传和复制/粘贴更新活箱。 编译历史的生成的txt文件也很棒。

这里要说明的是一个例子;

历史;

2202 11年5月16日下午5点38 1 andymain
简介弹出:更新在新窗口中打开链接组合 /webportal/portalInclude/portalFields.php

2201 11年5月16日5: 07 PM 1 andymain
更新的询问从感谢您的消息。 /webportal/customers/portalModules/Register/enquiry.php

期望的输出;

补丁/ webportal /客户/ portalModules /注册/ enquiry.php 补丁/ webportal/portalInclude/portalFields.php 补丁/ compiled_history.txt

那么,有一个应用程序或技术来产生这种补丁,还是有没有更好的方式,我不知道?

干杯安迪

回答

1

您可以使用的svn diff--summarize选项显示你的文件列表2次修订

之间改变
$ svn diff -r 185:194 --summarize 

样品结果:

M  patch/compiled_history.txt 
M  patch/webportal/portalInclude/portalFields.php 
M  patch/webportal/customers/portalModules/Register/enquiry.php 

svn log -v -r 185:195将分别在告诉你两个给定修订之间的每个修订的更改

+0

行,所以我希望避免它的命令行,但是我可以使用svn diff和pipe的结果来创建一个补丁树。我不确定确切的命令可能像'$ svn diff -r 185:194 --summarize | cp〜/ projectname/patch185-194 /'任何人都可以得到确切的命令或对Windows应用程序或eclipse插件的任何想法,可以做到这一点? – 2011-05-19 16:42:30