svn:externalsを使い始める方法は?


81

svn:externalsの使用に関する簡潔でよく書かれたチュートリアルを探しています。

私はすでに基本的な方法でそれらを使用する方法を知っていますが、最近出てくるこのような質問に答えるときにリンクできる良い記事が欲しいです:

同じソースに応じて複数のプロジェクトをどうするか?

私は自分でそれをしますが、首を突き出してチュートリアルを書きたいほど頻繁には使用しません。グーグルはこのトピックに関して驚くほど役に立たなかった。

回答:


47

svnbook / TortoiseSVNマニュアルのいくつかのセクションは次のとおりです。

これはsvn:externalsのsvnbookページです。これは、このテーマに関して最も役立つリソースです。

これは、ワークフローにサブプロジェクトを含める4つの方法を説明しています(そして、その過程で5番目の方法であるシンボリックリンクが欠落しています)。

そして、この最後のページは、リポジトリにデータをインポートする方法に関するTortoiseSVN固有のページです(svn:externalsとは直接関係ありません)。


20

上記のリンクsvn:externalsから、特定のリビジョン(ピン留め)に関連付けられているプロパティを設定する方法が明確でない場合は、次のようになります。

svn propset svn:externals "plugins -r12345 https://svn.example.com/common/plugins" extras

これにより、pluginsディレクトリの下にサブディレクトリが作成され、外部SVNURLのextrasリビジョン12345にリンクされますhttps://svn.example.com/common/plugins

は複数行の値になる可能性があるpropeditため、使用を提案するRedBeanの記事がありsvn:externalsます。上記の例は、を使用するように次のように変更されますpropedit

svn propedit svn:externals extras

次に、上記の値と同じ形式に従って、外部リンクごとに1行を追加します。


0
root/repo1/proj/base/common/log.c
root/repo1/proj/base/common/log.h
root/repo1/proj/base/client

root/repo2/proj/test/base

上に示したように、2つのファイルと1つのディレクトリをにコピーします。 repo2

ステップ1

ディレクトリ:/ home / jack / repo2 / proj /

cd /home/jack

ステップ2

svn propset svn:externals "../repo1/proj/base/client proj/base/client" repo2

何かのようなもの: ln repo1/proj/base/client repo2/proj/base/client

ステップ3

export SVN_EDITOR=vim

ステップ4

svn propedit svn:externals repo2

vimショー:

../repo1/proj/base/client proj / base / client ..

ステップ5:さらに2つのファイルを追加します

../repo1/proj/base/client proj/base/client
../repo1/proj/base/common/log.c proj/base/common/log.c
../repo1/proj/base/common/log.h proj/base/common/log.h
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.