私はこれが何度も尋ねられていることを知っているので、再度質問することをおizeびしますが、異なるマージの違いを確実に理解したいだけです。
私はこのプロジェクトの唯一の開発者なので、他の人の作品を上書きすることを心配していません。
私はいくつかの新しい機能を追加しようとしていたので、このプロジェクトのブランチを作成しました。現在のコードのバグを修正する必要がある場合、半分の完成したコードの作業に対処する必要はありませんでした。したがって、トランクには「安定」リリースが含まれ、ブランチは基本的にアルファ/ベータビルドです。
これらの変更を実際に開始する前に、いくつかのバグを修正してブランチビルドにコミットしました。ブランチをトランクにマージしてそれらの修正をコミットしたいので、ブランチでの変更を開始できます。
TortoiseSVNに移動してマージを選択すると、2つのオプションがあります。リビジョンの範囲をマージするOR 2つの異なるツリーをマージする
最初に、ブランチまたはトランクにリビジョンを作成し、それらの変更を別のブランチに移植したいときのために、
2つ目は、2つの異なるブランチの違いを作業コピーにマージしたいときです。
最初のオプションを試すとき、マージするURLはブランチとすべてのリビジョンを選択します。 [次へ]をクリックし、[テスト]をクリックすると、移動/削除/追加されたファイルでツリーの競合が発生します。
ヘッドリビジョンを使用して2番目のオプション(テストマージを使用)で同じことを試みると、うまくいくようです。正しい方法はどれですか?またはどちらも私がやりたいことに対して正しいですか?
あなたの場合、trunkとbranchには関係があるので、2つの異なるツリーをマージするは必要ないと思います。必要。
ブランチの再統合は、ブランチからトランクに変更を加える場合に必要なものです。
trunkからbranch(最新の安定バージョンへの更新)のマージにはリビジョン範囲のマージを使用できますが、マージにはbranch to trunk(主にこのオプションで作業します)。
多分 このSO-Question も助けになります- here はトピックの「標準的な文献」です。
更新:
(カメ)マージオプション:
アップデートII:
(カメ)現在のバージョンのマージオプション:
「ブランチのトランク」マージには、「リビジョン範囲のマージ」が通常使用されます。
新しいバージョンのカメsvnは、再統合ブランチを削除しました。代わりに、さまざまなリビジョンのマージがこれを処理しています。