私のプロジェクトにはたくさんのフォルダがあります。私は確かに、それぞれが7つの異なるフォルダーにある少数のファイル(約15)に変更を加えたいことを知っています。また、それを達成するためにソース全体をチェックアウトしたくありません。必要なフォルダだけをチェックアウトすることはできますか?
このシナリオは、さまざまなソースで頻繁に発生します。選択したフォルダのみを一度にチェックアウトすることはできますか?
編集
たとえば、ソースフォルダにが含まれているとします。 5つのサブフォルダー。お気に入り、
ソース
- 芯
-ヘルパー
-拡張機能
-テーマ
-リソース
そして、ExtensionsフォルダーとThemesフォルダーだけをチェックアウトしたいと思います。ただし、各フォルダを個別にチェックアウトしたくありません。チェックアウトの場所をsvn.svnhost.com/trunk/project1/sourceとして指定します。 [次に、Extensions
とThemes
を選択して1回のチェックアウトを行います]
予想されるチェックアウト:
ソース
-拡張機能
-テーマ
何かのようなもの:
svn co svn.svnhost.com/trunk/project1/source --foldernames Extensions, Themes
必要なフォルダーをチェックアウトするだけでなく(サブフォルダーツリー全体も必要な場合にのみ機能します)、Subversion 1.7は「 スパースディレクトリ "」と呼ばれるものをサポートします。基本的に、フォルダを特定の深さまでチェックアウトし、その後、関心のあるフォルダに「ドリルダウン」することができます。
コマンドラインクライアントを使用して、--depth
および--set-depth
オプションをsvn update
に使用します。 TortoiseSVNを使用している場合は、チェックアウトダイアログに[チェックアウトの深さ]オプションがあります。
[〜#〜] edit [〜#〜]:特定の質問に対して明確にするために、最初にソースツリーを深さでチェックアウトします "即時」。これにより、すべてのフォルダが作成されますが、最初は空になります。次に、ExtensionsおよびThemesディレクトリを更新してドリルダウンできます。 「完全に再帰的な」深さまで(svn update --set-depth infinity
またはTortoiseSVNの「リビジョンに更新→更新の深さ」→「完全に再帰的」)。
[〜#〜] edit [〜#〜]:更新の深さは一種の「可視性レベル」と見なすことができ、Subversionによって記憶されますつまり、作業コピーに対してsvn update
を実行すると、現在の可視性レベルにのみ更新されます。
はい、次のようなリポジトリアドレスがあるかどうかを確認してください。
https://elastik.svn.sourceforge.net/svnroot/elastik/
目的のフォルダを最後に追加するだけです。したがって、「trunk/includes」フォルダのみが必要な場合:
https://elastik.svn.sourceforge.net/svnroot/elastik/trunk/includes
Tortoiseナビゲーター(右クリック)で特定のフォルダーに移動し、その場所に対してチェックアウトを実行します