0

无法使用 Java 中的 SVNKit 库将修改后的文件提交到 SVN 存储库。没有堆栈跟踪信息可供我调试,这令人失望。

该文件是使用 Java 程序修改的,我必须使用 SVN 提交修改后的文件。(svn commit -m "更新")。

当我运行“svn status”命令时,该文件已被修改并显示如下。

svn 状态文件名

M 文件名

这是我的代码:

try {
String url = "http://repository URL";
File file = new File("<path to file>"+inputFile);

DAVRepositoryFactory.setup();
SVNURL svnurl = SVNURL.parseURIDecoded(url);
SVNCommitInfo commitInfo;
String uname = <username>; // auth details to connect to SVN repo
String pwd = <password>;

pw.println("<br> SVN URL is : "+ svnurl); //pw is a reference object of response.getWriter()
DAVRepository repo = (DAVRepository) DAVRepositoryFactory.create(svnurl);
ISVNAuthenticationManager authManager = SVNWCUtil.createDefaultAuthenticationManager(uname, pwd);
repo.setAuthenticationManager(authManager);

long latestRevision = repo.getLatestRevision();
pw.println("<br> LATEST REVISION IS : "+latestRevision);
/*
SVNClientManager clientManager = SVNClientManager.newInstance(null,repo.getAuthenticationManager());
try {
SVNUpdateClient uc = clientManager.getUpdateClient();
uc.doUpdate(file, SVNRevision.HEAD, true);
SVNCommitClient cc = clientManager.getCommitClient();
commitInfo = cc.doCommit(new File[] {file}, false, "Updated regex", null, null, false, false,          SVNDepth.INFINITY);
pw.println("<br> COMMIT INFORMATION : "+commitInfo);
} finally {
clientManager.dispose();
}
*/
} catch (Exception e) {
pw.println(e.getMessage());
}

我的输出:SVN URL 是:存储库 URL [Ljava.lang.StackTraceElement;@1e610e3 (并且修改后的文件未提交)

任何帮助表示赞赏。谢谢

4

0 回答 0