我想知道一个特定的本地工作区文件,相应的svn reposity路径。 我的文件是从多个存储库中提取的,并放在我的eclipse工作区的不同项目中。 右键单击它们,选择属性 - >颠覆 - >我可以阅读我正在寻找的路径。
我需要用java类读取这个路径。 我认为一些信息存储在每个项目的根目录中隐藏的.svn文件夹中。
任何人都可以告诉我subclipse在哪里读取每个文件的svn路径(或者如何构建它)..
稍后我将使用svnkit自动对我的工作区文件进行一些操作,使用该信息。但我想得到任何文件的svnpath,恐怖。
谢谢!
答案 0 :(得分:1)
您需要使用SVN API并在本地资源上调用svn info。结果将包含所有信息。
答案 1 :(得分:0)
我解决了这个简化的(没有try / catch而且没有对nullpointer的控制......)代码: (使用SVNKit)
public static long getWorkingCopyRevisionNumber (String localpath) {
SVNStatus status = getWorkingStatus (localpath);
Long revNum = status.getCommittedRevision().getNumber();
return revNum;
}
public static SVNStatus getWorkingStatus (String localpath) {
SVNStatusClient statusClient = SVNClientManager.newInstance().getStatusClient();
File f = new File(localpath);
SVNStatus status = statusClient.doStatus( f, false);
return status;
}