我正在尝试仅从SVN获得绝对路径来确定本地文件的确切绝对路径。整个想法是我正在编写一个eclipse插件,从知道URL到SVN中的文件,你可以点击一行,并打开eclipse中本地的相应文件。
我遇到困难的地方是试图确定SVN路径的确切位置以及实际文件是从本地开始的。让我举一个实例来证明。
假设SVN中文件的绝对URL是:
在用户计算机上的这个位置可以在eclipse中找到相同的文件:
C:\ Users \ Steve \ workspace \ Jira Plugins \ Sentinel2Jirav4 \ sentinel2jirav4 \ src \ main \ java \ com \ whitehatsecurity \ jira \ configurations \ IPluginConfigurationSettings.java
路径的结构肯定存在一些差异。
您可以在SVN中看到URL是如何:
/ SVN /发现/ sentinel2jirav4 /
日食的本地路径是:
\ Jira Plugins \ Sentinel2Jirav4 \ sentinel2jirav4 \
看起来我可能有一个首选项页面,我让用户添加svn的路径,如:/ svn / discovery /
因此,我从SVN获得的每个绝对URL都将被切断到/ svn / discovery。
有没有更好的方法将SVN路径本地关联到其路径? SVN是否存储本地路径信息?
答案 0 :(得分:1)
首先,您应该阅读.svn
的结果中获得的svn(entries
文件夹和{。1}}文件内的.svn文件夹)的本地结构
其次,您需要为%WORKSPACE%中的所有文件夹解析.svn / entries。
之后,您将确切知道SVN中本地文件夹和URL之间的关系
例如:checkout
内部根文件夹src/main/java/com/whitehatsecurity/jira/configurations/IPluginConfigurationSettings.java
应该是名为src
的文件夹,其中应该位于文件.svn
。文件entries
内部应该遵循以下行:
.svn/entries
或者您可以为每个文件夹运行dir
3
http://webappsecure.com/svn/discovery/sentinel2jirav4/src
http://webappsecure.com/svn
,其中包含svn info C:\Users\Steve\workspace\Jira Plugins\Sentinel2Jirav4\sentinel2jirav4\src
。
结果得到类似
.svn