1

嗨,如何使用 SVNkit 获取文件的最后修改值。场景:文件是从 SVN 更新的,并且它在本地 repo(工作副本)中可用。

4

3 回答 3

0

您可以使用 svn 关键字http://svnbook.red-bean.com/en/1.4/svn.advanced.props.special.keywords.html '修改者'应该是作者。

您必须确保在每次签入之前都会更改带有关键字的文件。这可以使用 ant 脚本来完成。

关键字可以在常量中使用,第二个常量提取有趣的部分:

private static final String SVN_AUTHOR_BASE            = "$Author: 113665 $";

/** Is filled in automatically on check in */
public static final String  SVN_AUTHOR                 = SVN_AUTHOR_BASE.
                              substring(9,SVN_AUTHOR_BASE.indexOf('$', 9) - 1);
于 2012-06-06T07:13:56.920 回答
0
public static String getLastModifiedBy(File localPath) throws SVNException {
    final SVNStatus status = SVNClientManager.newInstance().getStatusClient().doStatus(localPath, false);
    return status != null ? status.getAuthor() : null;
}
于 2012-06-06T07:40:56.497 回答
0
    SVNProperties props=new SVNProperties();
    repository.getFile(filePath,new Long(-1),props,null);
    String author=props.getSVNPropertyValue("svn:entry:last-author").toString();    

工作正常。

于 2012-06-06T08:37:33.083 回答