我在构建应用程序之前使用ant和svntask来更新存储库。在构建结束时,会发送一封包含构建结果的电子邮件。在该电子邮件中包含svn修订号和消息会非常有帮助,因此如果构建中断,我们知道要查看哪个修订版。
我目前只显示修订号:
<status path="${main.site}" revisionProperty="sqlUpdateStatus.revision"/>
但是我不知道如何(或者是否有办法)获得该修订版的消息(由提交者输入的消息)。你们知道怎么做吗?
答案 0 :(得分:2)
这不是您问题的答案,但是您是否考虑过使用持续集成(CI)工具,例如Hudson?
Hudson开箱即用SVN和ANT支持,以及在构建失败时发送错误的能力。
答案 1 :(得分:2)
我认为没有内置的方法来获取提交消息,但您可以使用以下命令从svn中手动拉出它:
svnlook log -r X /path/to/repo
这将返回/ path / to / repo中存储库的修订版X的日志消息。你可以把它包装在ant的exec任务中,从ant ...中预先形成它。
+1 for Hudson - 部署和设置非常简单
答案 2 :(得分:1)
<svn username="username" password="password">
<log url="svn://url"/>
</svn>
答案 3 :(得分:1)
我不知道用svnant获取它的好方法,但是从命令行获取它的好方法是:
svn propget --revprop svn:log -r1234
答案 4 :(得分:1)
使用可执行文件:
<exec executable="svn" dir="." outputproperty="ant.comment">
<arg line="propget --revprop svn:log -r${ant.revision}"/>
</exec>
<echo>The comment is: ${ant.comment}</echo>
答案 5 :(得分:1)
使用以下命令
svn propget --revprop svn:log -r HEAD --username USERNAME svn://THE_URL