我想使用 Ant 来获取 svn 存储库最新提交的用户名。
我怎样才能尽可能跨平台地做到这一点?
谢谢!
最佳答案
所以,这里是“svnant”的例子:
<path id="devlibs.path">
<fileset dir="devlib" includes="**/*.jar" />
</path>
<typedef resource="org/tigris/subversion/svnant/svnantlib.xml" classpathref="devlibs.path" />
<svnSetting
id="svn.settings"
svnkit="false"
javahl="false"
username="${svn.username}"
password="${svn.password}" />
<target name="get-svn-author">
<svn refid="svn.settings">
<singleinfo target="${svn.repo.url}" property="author.result" request="author" />
</svn>
<echo message="Author of last commit: ${author.result}" />
</target>
您应该将“svnant.jar”和“svnClientAdapter.jar”放到“devlibs.path”标识的路径中。以及“javahl”或“svnkit”所需的其他库到您的“${ANT_HOME}/lib”。
如果您有 1.6 格式的 SVN 存储库,则可以使用“svnkit”(在“svnSetting”-block 中设置为“true”)。因为“svnkit”是一个纯 Java 工具包,所以最好在需要跨平台解决方案时使用。如果您已经切换到 1.7,那么我建议使用 SVN 命令行客户端(在我的示例中为命令行客户端配置了“svnSetting”)。检查 this page (Slik SVN) 以获取有关在哪里可以找到以及如何安装不同 SVN 命令行客户端的信息。
关于svn - 如何使用ant获取最后一次svn提交的用户名?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10070871/