1

svn リポジトリがあります。

このリポジトリからいくつかのフォルダーをローカル マシンにチェックアウトしたいと考えています。具体的には、svn から C:/workspace にあるワークスペースに 7 つのフォルダーをチェックアウトしたいと考えています。(そのため、チェックアウト後の構造は C:/workspace/(7 つのフォルダーすべて) になります)。

問題は次のとおりです。7 つのフォルダーのうち、4 つがパス 1 にあり、他の 3 つのフォルダーがパス 2 にあります。

これが私が試したことです、

  1. Cに行きます。
  2. ワークスペースを右クリックし、
  3. チェックアウトしてから、path1 を指定すると、4 つのフォルダーが取得されます。(現在、構造は C:/workspace/(path1 からの 4 フォルダー) になります)。ここまで大丈夫。4. ワークスペースを再度右クリックすると (パス 2 から他の 3 つのフォルダーを取得するため)、チェックアウト オプションが見つかりません。
  4. ワークスペース内にフォルダーを手動で作成し(新しいフォルダーオプションを使用)、svnからコンテンツをチェックアウトしようとしましたが、フォルダーがsvnと同期しなくなります(ワークスペースに緑のチェックマークはありません)。

    svn tortoise Windows シェル ユーティリティを使用しています。

    構造 C:/workspace/(svn の 7 つのフォルダーすべて) を取得するために何をする必要があるかを提案してください。

4

4 に答える 4

0

必要なレイアウトを取得するには、下にある 7 つのフォルダーのそれぞれのルートをチェックアウトします。7 つのc:/Workspace個別のチェックアウトも同様に行います。

タグ付け/分岐について質問したコメントで、.内のフォルダーに対してこれを行わないでくださいc:/Workspace。代わりに、どちらかです。

  1. コマンドを使用してレポブラウザーで実行するcopy to...か、または
  2. 各プロジェクトのトランクを別の場所にチェックアウトし、これらを分岐/タグ付けに使用します。いずれにせよ、マージのためにこれらが必要になる場合があります (繰り返しますが、c:workspace でも実行しないでください!)。

...次に、必要に応じて c:/workspace 内のフォルダーを svn 切り替えます。

これはもちろんエラーが発生しやすいため、反復部分のスクリプト化を検討してください。ant build.xml は、チェックアウトとスイッチにとって簡単です。

于 2013-06-04T14:36:38.863 に答える
0

他の 3 つのフォルダーを 2 番目のリポジトリから別のフォルダーにチェックアウトし、フォルダーを最初のチェックアウトに移動できます。できます。

  1. Cに行きます。
  2. ワークスペースを右クリックし、
  3. path1 をチェックアウトすると、4 つのフォルダーが取得されます。(現在、構造は C:/workspace/(path1 からの 4 フォルダー) になります)。
  4. Cの下に新しいフォルダーpath2を作成します
  5. 右クリックして、パス 2 をチェックします (これで、構造はパス 2/(3 フォルダー) になります)
  6. 3 つのフォルダーを前のチェックアウト フォルダーに移動します (現在の構造は C:/workpace/(7folders)\ です)。
  7. 2 番目の 3 つのフォルダーのセットはバージョン管理されています (緑色のチェックマークが表示されます)。これらのフォルダー内のチェックインはすべて、2 番目の SVN パスに移動します)
于 2013-06-04T05:25:41.443 に答える
0

オプション4は、それを行う正しい方法です。workspaceしかし、ディレクトリがバージョン管理されないことは正しいです。これは、チェックアウトしたことがないためです。その下のディレクトリのみをチェックアウトしました。.svn代わりに得られるのは、レベルで 1 つだけではなく、独自のディレクトリを持つ 7 つのディレクトリのそれぞれworkspaceです。その場合、複数のルートにあるファイルに変更をコミットすることはできないと思います。

検討できるもう 1 つのオプションは、必要なフォルダーにタグを付けるか、リポジトリの別の部分に分岐してから、それをチェックアウトすることです。

于 2013-06-04T03:48:33.537 に答える