SVNkit checkout 代码
package svn;
import java.io.File;
import org.tmatesoft.svn.core.SVNURL;
import org.tmatesoft.svn.core.internal.io.dav.DAVRepositoryFactory;
import org.tmatesoft.svn.core.internal.wc.DefaultSVNOptions;
import org.tmatesoft.svn.core.wc.ISVNOptions;
import org.tmatesoft.svn.core.wc.SVNClientManager;
import org.tmatesoft.svn.core.wc.SVNRevision;
import org.tmatesoft.svn.core.wc.SVNUpdateClient;
import org.tmatesoft.svn.core.wc.SVNWCUtil;
public class Demo
{
// 声明客户端管理类
private static SVNClientManager ourClientManager;
public static void main(String[] args)
{
// 对版本库进行初始化操作
DAVRepositoryFactory.setup(); // 支持HTTP和HTTPS
// FSRepositoryFactory.setup(); 支持FTP
// SVNRepositoryFactoryImpl.setup(); //支持SVN协议
// 版本库的URL地址
SVNURL repositoryURL = null;
try
{
repositoryURL = SVNURL.parseURIEncoded("http://ip/XXXXX");
}
catch (Exception e)
{
e.printStackTrace();
}
String name = "name";
String password = "pwd";
String myWorkingCopyPath = "D:/myLocalRep";
ISVNOptions options = SVNWCUtil.createDefaultOptions(true);
ourClientManager = SVNClientManager.newInstance((DefaultSVNOptions) options, name, password);
File wcDir = new File(myWorkingCopyPath);
wcDir.mkdirs();
try
{
SVNUpdateClient updateClient = ourClientManager.getUpdateClient();
updateClient.setIgnoreExternals(false);
updateClient.doCheckout(repositoryURL, wcDir, SVNRevision.HEAD, SVNRevision.HEAD, true);
}
catch (Exception e)
{
e.printStackTrace();
}
}
}