0

SVNからの絶対パスのみを使用できることから、ローカルファイルの正確な絶対パスを決定しようとしています。全体的なアイデアは、SVN内のファイルへのURLを知っていることから、行をクリックすると、eclipse内からローカルに対応するファイルが開かれるeclipseプラグインを作成しているということです。

私が困難に直面しているのは、SVNパスがどこで終わり、実際のファイルがローカルで始まるかを正確に判断しようとしているところです。実際の例を挙げてみましょう。

SVN内のファイルへの絶対URLが次のようになっているとしましょう。

http://webappsecure.com/svn/discovery/sentinel2jirav4/src/main/java/com/whitehatsecurity/jira/configurations/IPluginConfigurationSettings.java

同じファイルが、ユーザーのコンピューターのこの場所にあるeclipseにあります。

C:\ Users \ Steve \ worksheet \ Jira Plugins \ Sentinel2Jirav4 \ sentinel2jirav4 \ src \ main \ java \ com \ whitehatsecurity \ jira \ configurations \ IPluginConfigurationSettings.java

パスの構造には確かにいくつかの違いがあります。

SVNでURLがどのようになっているのかがわかります。

/ svn /discovery/sentinel2jirav4/

日食からのローカルパスは次のとおりです。

\ Jira Plugins \ Sentinel2Jirav4 \ sentinel2jirav4 \

/ svn /Discovery/のようにユーザーにsvnへのパスを追加してもらう設定ページを作成できる可能性があるようです。

したがって、SVNから取得したすべての絶対URLは、/ svn/discoveryまで切り取られます。

SVNパスをそのパスにローカルで関連付けるためのより良い方法はありますか?SVNはそのローカルパス情報を保存しますか?

4

1 に答える 1

1

まず、 %WORKSPACE%内のすべての.svnフォルダー の .svn/entries を解析する必要があります。その後、SVNのローカルフォルダーとURLの関係を正確に知ることができますentriescheckout

例:src/main/java/com/whitehatsecurity/jira/configurations/IPluginConfigurationSettings.java ルート フォルダー内は、srcという名前.svnのフォルダーである必要があり、その中に file が配置されている必要があります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その結果、次のようなものが得られます

Path: workspace\Jira Plugins\Sentinel2Jirav4\sentinel2jirav4\src
URL: http://webappsecure.com/svn/discovery/sentinel2jirav4/src
Repository Root: http://webappsecure.com/src
etc...
于 2012-08-13T05:17:42.067 に答える