2009-07-14 4 views
0

1つのSVNリポジトリの場所から別の場所にディレクトリをコピーし、古いものを保持し、両方の場所の個々のファイルの履歴を保持することは可能ですか?これまでのところ、ディレクトリをコピーするが、ディレクトリを移動する履歴やSVNの移動を失うSVNインポートが表示されます。ここでは簡単な例だ:SVNレプリケートディレクトリ

  • COPY SVN_ROOT /プロジェクト/支店/ release1.0 /にmyproj/RAD /トランク/にmyProj
  • をSVN_ROOTするには、正しい

答えて

4

svn copyを使用しますか?

+0

私は自分自身を疑問に思っています。ファイル上で動作するように見えるので、履歴が保持されているかどうかわかりません。 – Bostone

+0

はい、履歴は保持されます:http://svn.haxx.se/users/archive-2005-01/1857.shtml –

0
  • 両方の場所で歴史を保持:とSVN Issue 1328で扱われているように、svn importは完璧ではありません。
  • svn moveをお探しの場合もあります。

  • また、this thread(関連する質問と同様の示唆)を参照してください。

+0

のsvn動きは元の場所を削除します – Bostone

+0

Doh!その後、私は 'svn move' = 'svn copy' + 'svn delete'のように、Jasonと同意します。 –

3

ファイルが同時に更新されるUnixリンクと同等のものをお探しですか?あるいは、それらをコピーして発散させようとしていますか?私はsvndumpsvnfilter(または手で編集する)がおそらく後者を行うことができると思います。

しかし、なぜ私がメンテナンスの頭痛につながるように思っているのか、考えてみることをお勧めします。同時に更新する2つのファイルを保持しようとする場合、より良い解決策は、それらを使用するコードにリンクされている新しいモジュールにそれらを抽出することです。あなたがそれらを発散させようとしているなら...正直言って、歴史はそれほど意味を持たず、リポジトリがある時点を見ている様子を間違って見ることができます。

+0

合意。コードリポジトリの全体的なポイントは、プロジェクトの真実の単一のソースを維持することです。 –

+0

古いブランチは古いもののためにそこにとどまります。私はその要件を思いついた人ではありません:)私は、私が継承するファイルの履歴に興味を持っています – Bostone

1

私は平凡な古いSVNのコピーはこれを行うと思うし、あなたは発散することができます。分岐/タグ付けと同じです。

あなたは、コードを発散することなく、リンクのような何かをしたい場合は、外部定義を使用してに見て、SVNの本で説明したように:私の知る限り

http://svnbook.red-bean.com/en/1.5/svn.advanced.externals.html