2011-12-11 12 views
14

は、リモートSVNリポジトリは、このような構造を持っているとしますSVNチェックアウトのディレクトリをスキップしますか? (部分的なチェックアウト)

/project 
     /src 
     /bulk 

は今、私はすでにbulkのコピーを持って何らかの理由で他の場所で私のマシン上で(不変またはめったに変更しないと仮定しました)。何とかリポジトリの新しいコピーをチェックアウトすることができますが、bulkディレクトリを事前に提供して、再度ダウンロードされないようにしてください。

明確にするために、この仮説的なプロセスは確かにbulkディレクトリ内のファイルのチェックサムをチェックし、正しくないファイルを更新する必要があります。その結果、完全に整合性のあるチェックアウトが行われます。私はちょうど私が既に逐語的に持っているそれらのファイルをダウンロードする過去のショートカットをしたいです。

+0

私はそれほど重要ではないと思うが、あなたのsvn repoがもはや信頼できないという問題につながる。さらに、今の魔法のバルクを持っていない他の人たち(あなたの将来の自己を含む - 別のマシンで)バルクとは何ですか?データ、サードパーティのライブラリは、ベストプラクティスに導くのに役立ちます。 –

+0

@SteveRobillard:マジックバルクはレポの一部です(これはsountrackファイルの集合です)。私はちょうどすでにそれらをダウンロードしたことが起こって、私はそれを活用したい。私は、チェックサムとすべてのことを確認することが非常にうれしいです! –

+0

https://stackoverflow.com/questions/192824/svn-checkout-ignore-folderに似ています –

答えて

26
  1. チェックアウト/プロジェクトで、「空」にする奥行きを指定します。
  2. 無限深度を指定して/ project/srcを更新します。
  3. 現在の一括作業コピーをプロジェクトディレクトリの作業コピーにコピーします。

svn checkout --depth empty http://svnserver/project/ project 
svn update --set-depth infinity project/src 
// copy your current /bulk into /project 

注 - これはSubversionの1.5で導入されたsparse directories機能を利用しています。

+2

完全なSVN初心者のためにこれを少し詳しく記入できますか? :-) –

+0

'/ bulk'が変更されておらず、リポジトリからチェックアウトするつもりがなければ、リポジトリに入れる必要はありません。 '/ src'フォルダをリポジトリに置いてください。 – bdares

+0

@bdares:それは私のレポではありません! :-) –

0

前回私はこれをやらなければなりませんでした。私はディレクトリに膨大な数のデモファイルを持っていましたが、これをtrunkの新しいディレクトリに移動しました。

あなたは似た何かを、あなたが同じディレクトリにあるとbulkが必要な場合は、svn:ignorebulkを追加することを検討することがあります。

+0

つまり、ローカルシステムにローカルコピーを使用するだけで、リビジョン管理から' bulk'を切り離すべきですか?私はそれが回避策だと思っていますが、実際には私のチェックアウトにローカルファイルを "シード"できるようになることを本当に望んでいました。 –

+0

いいえ、「バルク」はバージョン管理に残っていますが、 'trunk'では残っていません。これにより、大きなチェックアウトを避けることができます。 –

1

手順TortoiseSVNの 1.7以降使用して:/プロジェクト/に "SVNチェックアウト"

  • "この項目のみ" として "チェックアウトの深さ" を指定して、/プロジェクトに

    1. "SVNチェックアウト" "Checkout Depth"を "完全再帰"として指定する
  • 関連する問題