Subversion を使用して複数のディレクトリを一度にコミットするにはどうすればよいですか?

StackOverflow https://stackoverflow.com/questions/878834

  •  22-08-2019
  •  | 
  •  

質問

SVN CI DIR/A DIR/B -M「私のコメント」を使用してみましたが、これは機能しません。また、SVN CI dir/a/* dir/b/* -m "私のコメント"を使用しましたが、それも機能しません。

複数のファイルを指定できることはわかっていますが、これらのフォルダー内の変更されたすべてのファイルをチェックインするように Subversion に指示するにはどうすればよいですか?私は主に、すべての変更を 1 つのリビジョンに反映させるためにこれを行いたいと考えています。一度に 1 つのディレクトリをチェックインできますが、そうするとディレクトリごとに異なるリビジョンが与えられてしまいます。

役に立ちましたか?

解決

私はあなただけの1つのオプションを持っていると思う:含むディレクトリにチェック - サブディレクトリとしてこれらの両方を持っているものを。

彼らは、あなたが行うことができますたくさんありません(すなわち、それらはレポの両方のトップレベルのディレクトリです)すでにそのように整理していない場合 - 。のsvnコマンドは、単一のディレクトリで作業

他のヒント

あなたはそれがここで正常に動作しますので、「しかし、これは動作しません」どういう意味かを指定する必要があります:

D:\Projects>svn commit -m 'test1' test\aaa "test\aaa bbb ccc"
Sending        test\aaa\aaa222\xxx.txt
Sending        test\aaa bbb ccc\aaa.txt
Transmitting file data ..
Committed revision 8.

D:\Projects>
svn add dir/a
svn add dir/b
svn commit

けれども、あなたが考えている可能性が高くなります:

svn add dir/*
svn commit

あなたはそのチェンジをコミットし、後に、あなたがコミットしたいすべてのファイルを1つのチェンジを作成し、トップディレクトリに、--changelistオプションを使用することができます。

ソースと情報: SVN帳:チェンジする

あなたがチェックアウト場合はaとbがどこにあるため、より高いレベルのフォルダから

これは簡単です。もしそうなら、あなたの作業コピーは「DIR」と、AとBは、「DIR」コミットの両方への変更をコミットする変更をしているです。私はすべての時間をこれを行うます。

編集
彼らは同じ作業コピーにあるようにするために複数のフォルダをコミットするには、次のものが必要になります。

あなたが処理するにはあまりにも多くを持っていることについて心配している場合は、

、あなたが必要なフォルダのみでまばらなチェックアウトを試みることができる、とすることなく、必要に応じて、あなただけのまたはのサブディレクトリベースディレクトリをコミットすることができ他のプロジェクトのオーバーヘッドます。

リポジトリの一部をチェックアウトするためexternalsプロパティ:

SVNを使用することを検討してください。あなたは選ぶと取得するには、ディレクトリかを選択し、単一ステップで複数の宛先にコミットすることができます。私たちは大きな成功を収めてしばらくの間、このアプローチを使用してきた。

以下のクエリを検討してください

  1. リポジトリから複数のディレクトリにチェックアウトされた多数のファイルがあり、その多くが変更されており、どのファイルが変更されたか覚えていないため、一度に 1 つのファイルをマージするのが難しい場合は、次の手順を実行します。

最上位ディレクトリに移動してコマンドを実行します

svn ci -m "comments"

これにより、最上位ディレクトリとその下の多くのサブディレクトリの下にある変更されたすべてのファイルがチェックインされます。

Aは、同様の問題が発生しました。私は1つのリポジトリを持っていたと私はrepoeitoryのサブフォルダのいくつかの2つの別々の作業コピーを持っている必要がありました。リポジトリはこのようなものだった。

/web/lib
/web/htdocs
...

...私は(それぞれ)の別々の作業コピーを持っているために必要とされます:

C:/.../web/lib
C:/.../htdocs/cbs

私は/webする「ポインティング」C:/.../webC:/.../htdocs/cbsC:/.../web/htdocsの「マスター」作業コピーを有するハードリンク(またはNTFS接合部)を作成することによって、これを解決しました。だから私は、これらの作業コピーのいずれかでローカルな変更を加えるたびに、私はいつも自然に作業コピーの両方からの変更を含むC:/.../webを、コミットます。

私はこの方法があなたのために有用である可能性を願っています。

これは、この質問を頼まれたので、長い時間でしたが、私は遅刻のアップデートを持っています。

あなたはDIR /、DIR / B、DIR / C、DIR / D ....のようなツリーを持っているだけサブフォルダAおよびBは、次のコマンドを作品に変更をコミットしたいと仮定すると、

のsvn ciはDIR / / * DIR / B / * -m "私のコメント"

あなたが7年前にそれをしようとしたとき、これは本当にうまくいかなかった場合は、

、私はこの機能は今後のリリースで追加されたことを想定することができます。

scroll top