0

たとえば、外部を持つsvnにプロジェクトがあります

- 私のプロジェクト
| |
|--------もの1
|--------もの2
|--------external-lib // svn::external

external-lib ディレクトリ内にファイル (Makefile) を追加する必要があります。外部リポジトリではなく、自分のリポジトリ ( )内でコミットしたいと考えていますmyproject。外部リポジトリを変更しないことが非常に重要です。出来ますか?外部リポジトリの最新リビジョンを使いたい。

4

3 に答える 3

1

Makefile を myproject に直接保存することをお勧めします。次に、次を使用して external-lib から実行できます

make -f ../Makefile.external
于 2010-11-25T13:21:42.483 に答える
0

あなたの質問に対する私のコメントへの回答に基づいて、サーバーとクライアントが Subversion 1.6.x を使用している場合、これを行うことができます。Subversion 1.6.x では、ファイルの外部のサポートが利用できるようになりました。そのため、svn::external パスに含まれるファイルとディレクトリごとに、myproject ディレクトリの svn:externals プロパティを作成して入力する必要があります。

svn:externals プロパティは次のようになります。

^/external-lib/file1 file1
^/external-lib/directoryA directoryA
^/external-lib/file2 file2
^/external-lib/directoryB directoryB

ここで svn:externals の詳細を読むことができます: http://svnbook.red-bean.com/nightly/en/svn.advanced.externals.html

これで、external-lib と myprojectが同じリポジトリに存在する限り、作業コピーを使用して、external-lib のファイルとディレクトリに変更をコミットできます。

于 2010-12-06T20:20:05.467 に答える
0

独自の外部リポジトリのブランチを作成し、svn:externals を完全に捨てない限り、あなたが望むことは不可能です。もちろん、それはマージによって外部ライブラリへの更新を自分で維持する必要があることを意味します (このファイルを追加する以外に何も変更しないため、おそらく比較的簡単に自動化できます)。

そうは言っても、マーティンのソリューションは、あなたの場合、抵抗が最も少ない方法のようです...

于 2010-11-25T23:31:31.623 に答える