用java读取subclipse存储库路径

时间:2014-09-05 15:22:34

标签: java eclipse svn subclipse svnkit

我想知道一个特定的本地工作区文件,相应的svn reposity路径。 我的文件是从多个存储库中提取的,并放在我的eclipse工作区的不同项目中。 右键单击它们,选择属性 - >颠覆 - >我可以阅读我正在寻找的路径。

我需要用java类读取这个路径。 我认为一些信息存储在每个项目的根目录中隐藏的.svn文件夹中。

任何人都可以告诉我subclipse在哪里读取每个文件的svn路径(或者如何构建它)..

稍后我将使用svnkit自动对我的工作区文件进行一些操作,使用该信息。但我想得到任何文件的svnpath,恐怖。

谢谢!

2 个答案:

答案 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;
}