
怎样通过脚本读取svn代码版本的状态信息
2015-03-07 · 知道合伙人影视综艺行家
关注

展开全部
关于这个问题现在已经有几种解决办法了。SvnAnt: http://subclipse.tigris.org/svnant.html,我在日常的build中用的便是这种方法,但我并不喜欢这种方法,因为他需要依赖本地库。
只是一个很简单的任务:获取当前working copy的top svn revision,在已经安装了xmltask(http://www.oopsconsultancy.com/software/xmltask/)的前提下,我可以只靠一小段Ant脚本便可以完成这个任务:
[html] view plaincopy
<project name="GetSVNHeadRevision">
<taskdef name="xmltask" classname="com.oopsconsultancy.xmltask.ant.XmlTask"/>
<property name="workingCopy" location="." />
<target name="default">
<exec dir="${workingCopy}" executable="svn">
<arg line="up" />
</exec>
<exec dir="${workingCopy}" executable="svn" output="svninfo.xml">
<arg line="info --xml ${workingCopy}" />
</exec>
<xmltask source="svninfo.xml">
<copy path="/info/entry/@revision" property="svn.head.rev" />
</xmltask>
</target>
</project>
通过antcall执行后,top revision会被保存在"svn.head.rev"属性中。
只是一个很简单的任务:获取当前working copy的top svn revision,在已经安装了xmltask(http://www.oopsconsultancy.com/software/xmltask/)的前提下,我可以只靠一小段Ant脚本便可以完成这个任务:
[html] view plaincopy
<project name="GetSVNHeadRevision">
<taskdef name="xmltask" classname="com.oopsconsultancy.xmltask.ant.XmlTask"/>
<property name="workingCopy" location="." />
<target name="default">
<exec dir="${workingCopy}" executable="svn">
<arg line="up" />
</exec>
<exec dir="${workingCopy}" executable="svn" output="svninfo.xml">
<arg line="info --xml ${workingCopy}" />
</exec>
<xmltask source="svninfo.xml">
<copy path="/info/entry/@revision" property="svn.head.rev" />
</xmltask>
</target>
</project>
通过antcall执行后,top revision会被保存在"svn.head.rev"属性中。
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询