我正在用 Java 编写一个预提交钩子。预提交挂钩(批处理文件)使用参数调用我的 Java 程序:repositoryLocation
, transactionId
. 我需要在提交期间验证 XML 文件,如果其中任何一个似乎无效,我会将非零退出代码返回到我的预提交挂钩,然后回滚整个提交事务。
我可以通过以下方式访问文件的任何修订版的内容代码:
SVNRepository repository = ...;
SVNProperties fileProperties = new SVNProperties();
ByteArrayOutputStream baos = new ByteArrayOutputStream( );
repository.getFile( changeEntry.getCopyFromPath() , revisionNum , fileProperties , baos );
log.debug("<![CDATA["+baos.toString()+"]]>");
但是我无法访问正在上传的文件的内容(工作副本的内容,由用户提交)。我不想向 SVN 写任何东西,我需要读取上传文件的内容,然后进行一些验证。在我的 Java 程序完成后,SVN 将完成提交或回滚。
有人可以帮我解决这个问题吗?