繁体   English   中英

通过 javahl 从 svn 简单结帐

[英]simple checkout from svn via javahl

我想使用 javahl 从 java 程序中检查来自 svn 的源。 尝试 Javahl,因为它似乎是免费的,也可用于商业用途。

我需要将http://example.com/svn/project1/trunk 之类的内容签出到本地目录。

这应该是一个相当简单的过程,只需几行代码? 我仍然找不到任何关于如何做到这一点的教程。

你能举一些例子 java 线吗?

我知道这个问题很老,但我今天不得不做类似的事情。 我也找不到任何好的教程,最终使用单元测试作为我的参考。

这是一些对我有用的 Java 代码:

import org.apache.subversion.javahl.ClientException;
import org.apache.subversion.javahl.SVNClient;
import org.apache.subversion.javahl.types.Depth;
import org.apache.subversion.javahl.types.Revision;
...
static void checkout(String reproUrl, String workingDirectory) throws ClientException {
    SVNClient client = new SVNClient();
    client.checkout(
        reproUrl,
        workingDirectory,
        Revision.HEAD,
        Revision.HEAD,
        Depth.infinity,
        false,
        false);
}

如果你需要认证, SVNClientusername(String)password(String)方法。

看看http://wiki.svnkit.com/Getting_Started_With_SVNKithttp://wiki.svnkit.com/Managing_A_Working_Copy

private static long checkout( SVNURL url , SVNRevision revision , File destPath , boolean isRecursive ) throws SVNException {

   SVNUpdateClient updateClient = ourClientManager.getUpdateClient( );
   /*
    * sets externals not to be ignored during the checkout
     */
    updateClient.setIgnoreExternals( false );
    /*
     * returns the number of the revision at which the working copy is 
    */
   return updateClient.doCheckout( url , destPath , revision , revision , isRecursive );

}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM