web-dev-qa-db-ja.com

ブランチをトランクにマージするTortoiseSVN

私はこれが何度も尋ねられていることを知っているので、再度質問することをおizeびしますが、異なるマージの違いを確実に理解したいだけです。

私はこのプロジェクトの唯一の開発者なので、他の人の作品を上書きすることを心配していません。

私はいくつかの新しい機能を追加しようとしていたので、このプロジェクトのブランチを作成しました。現在のコードのバグを修正する必要がある場合、半分の完成したコードの作業に対処する必要はありませんでした。したがって、トランクには「安定」リリースが含まれ、ブランチは基本的にアルファ/ベータビルドです。

これらの変更を実際に開始する前に、いくつかのバグを修正してブランチビルドにコミットしました。ブランチをトランクにマージしてそれらの修正をコミットしたいので、ブランチでの変更を開始できます。

TortoiseSVNに移動してマージを選択すると、2つのオプションがあります。リビジョンの範囲をマージするOR 2つの異なるツリーをマージする

最初に、ブランチまたはトランクにリビジョンを作成し、それらの変更を別のブランチに移植したいときのために、

2つ目は、2つの異なるブランチの違いを作業コピーにマージしたいときです。

最初のオプションを試すとき、マージするURLはブランチとすべてのリビジョンを選択します。 [次へ]をクリックし、[テスト]をクリックすると、移動/削除/追加されたファイルでツリーの競合が発生します。

ヘッドリビジョンを使用して2番目のオプション(テストマージを使用)で同じことを試みると、うまくいくようです。正しい方法はどれですか?またはどちらも私がやりたいことに対して正しいですか?

30
merk

あなたの場合、trunkbranchには関係があるので、2つの異なるツリーをマージするは必要ないと思います。必要。

ブランチの再統合は、ブランチからトランクに変更を加える場合に必要なものです。

trunkからbranch(最新の安定バージョンへの更新)のマージにはリビジョン範囲のマージを使用できますが、マージにはbranch to trunk(主にこのオプションで作業します)。

多分 このSO-Question も助けになります- here はトピックの「標準的な文献」です。

更新:

(カメ)マージオプション:

enter image description here

アップデートII:

(カメ)現在のバージョンのマージオプション:

enter image description here

「ブランチのトランク」マージには、「リビジョン範囲のマージ」が通常使用されます。

29
Micha

新しいバージョンのカメsvnは、再統合ブランチを削除しました。代わりに、さまざまなリビジョンのマージがこれを処理しています。

議論をチェックアウト Tortoisesvn Subversion 1.8-マージ-ブランチオプションの再統合は不要

9
DiAgo

マージダイアログの下に、「マージ(古いスタイル)」オプションがあります

Old style Reintegration

2
user887983