2011-01-05 9 views
3

Halloの専門家再統合ワークフロー

私からの簡単な質問、Tortoise SVNへの古い初心者。

私はブランチで作業していますが、ブランチの変更をトランクにマージする必要があります(コミット後)。しかし、正しいワークフローについてはわかりません。私はまずトランクを自分の作業コピーにマージして、起こり得るすべての競合を解決した後、ブランチをトランクに再統合する必要がありますか?私の同僚のほとんどはまだ休暇中であるので、私はチームのこのような基本についてアドバイスを受けることはできません。

事前にどうもありがとう、

ミュンヘン

ジョン

答えて

2

はいを​​使用してtrunkにあなたのブランチをマージ

  • あなたのブランチにマージ:言い換えする

    わからないあなたが言ったことを考えると追加する他に何それをすべて:)

    それはそれは今までに最後のステップでなければなりませんので、再統合機能は、基本的には右の枝削除する前に、さらなる発展のために、あなたのブランチが無用になることは注目に値しますコードが実稼働環境にあることを完全に確かめるまで、回避してください。不明な場合は、ブランチからトランクへの定期的なマージを行うことができます。なぜ機能が存在するのかということは、決して把握できなかったことです。 Subversionの貧弱なマージトラッキングの副作用だと思います。

    また、一度にすべてのマージを実行するのではなく、より小さなセットに分割し、マージの間に作業をコミットすることをお勧めします。マージの競合が発生した場合、元に戻すことができないように簡単に修正することはできません。

    更新:公式Subversionでバージョン管理冊これは言う: --reintegrateマージがブランチからトランクに行われた後のSubversion 1.5で

    を、ブランチはもはや ではありませんさらなる作業に使用できます。それは正しく 新しいトランク 変更を吸収することができませんまた、正しく 再びトランクに再統合できますか。あなたが あなたの機能ブランチで作業を続けたい場合は、この 理由から、我々は がトランクからそれをあなたの答えのための

    http://svnbook.red-bean.com/nightly/en/svn.branchmerge.basicmerging.html#svn.branchemerge.basicmerging.reintegrate

    +0

    アドバイスをいただきありがとうございます。私が言ったように、私はTortoise SVNの初心者です。私はちょうどあなたの提案の確認を求めます:トランクへのブランチのマージ(最終的な再統合の代わりに)がトランクの作業コピーで行われるべきであることを意味しますか? – JohnMunich

    +0

    @JohnMunich私はいつもそうしています。トランクへの変更をブランチへの変更に合わせる必要がある多くの状況があります(ブランチの機能シグネチャを変更し、トランクに新しい呼び出しを追加するなど)。最終的なポートの前に完全に機能するブランチをテストする方が簡単です。 –

    +0

    通常のマージと再統合のダイアログウィンドウでは、私は大きな違いは見つけられません(*から*への意味は同じです)。再積分は2回以上行うことはできませんか? 2回目の再統合の間に何が問題になるか? – JohnMunich

    0

    まずあなたがSVNへのあなたの支店で行われた変更をコミットします。

    次に、svnのマージ機能(特定のリビジョン番号)を使用して、ブランチから他のブランチ(またはメイン/トランク)にマージします。マージされた変更(すべての競合が解決された)を '他のブランチ(メイン/トランク)'のローカルコピーに入れたら、それらの変更をsvnに戻して完了します。

    +0

    感謝を を再作成し、それを破壊してお勧めします。私たちはTortoise SVNを使用しています。あなたの説明によると、私は次のワークフローを策定します:1.私のブランチへの変更をコミットします2.再統合(必要な解決競合でブランチにトランクをマージ)3.コミットします。再統合(ブランチからトランクにマージ)した後、変更はトランクと私の作業コピーに適用されますが、ブランチを除いているようです。私の理解は正しいのですか? – JohnMunich

    +0

    @ John、はい、 'trunk'の変更をブランチにマージする必要がある場合は、ブランチに対しても同じ手順を繰り返します。 –

    +0

    まだ質問があります:1.再統合はトランクの作業コピーで行われるべきですか? 2. 2番目のコミットもトランクの作業コピーで実行する必要がありますか?さらなる質問には申し訳ありません。 – JohnMunich

    0

    はい、これが方法です。

    機能ブランチを持っている可能性があるので、実行する必要があるのはSVN redbookです。

    1. trunkreintegrateパラメータ
    +0

    あなたのコメントありがとう。 「あなたの支店へのトランクのマージ」は必要ですか? Vikram.exeの答えで結論づけられていないようです。 – JohnMunich

    +0

    私が知る限り:はい、それは重要です。 Subversionは 'mergeinfo'プロパティのブランチのマージ履歴を追跡します。 'merge'コマンドによって自動的に処理されますが、トランクが以前にブランチにマージされている場合は、必要な情報だけがすべて含まれます。 – David

    関連する問題