3

SVNTortoise を使用してブランチからトランクにマージしようとすると、すべてがブランチ コピーで上書きされ、競合を解決するように求められません。理由を知っている人はいますか?「非インタラクティブにマージ」チェックボックスがチェックされていません。

4

3 に答える 3

0

「ブランチの再統合」アルゴリズムは、通常のマージとは異なります。トランクから機能ブランチまですべてをすでにマージし、そこで競合を解決したことを前提としています。したがって、マージ(ほぼ)コピーを再統合すると、機能ブランチがトランクにコピーされます。

http://tortoisesvn.net/docs/release/TortoiseSVN_en/tsvn-dug-merge.htmlからの引用

ブランチ開発中に行われたトランクへのすべての変更は、ブランチ全体にマージされている必要があります(またはマージ済みとしてマークされている必要があります)。

于 2012-07-16T07:20:12.070 に答える
0

マージしようとしているブランチのリビジョンのアクションは「追加」だと思います。これが、マージがすべてのファイルを上書きする理由です。 ここに画像の説明を入力

これは、SVN マージがすべてのファイルを上書きするリビジョン グラフです。 ここに画像の説明を入力

ブランチに何か新しいものをコミットして、リビジョンのアクションを「追加」から「変更」に変更する必要があります。

スペースを追加してブランチを更新します。 ここに画像の説明を入力

ここに画像の説明を入力

ブランチ更新後のリビジョングラフ

ここに画像の説明を入力

ブランチからマージすると、競合が表示されるはずです。SVN は手動で解決するように求めます。

ここに画像の説明を入力

于 2015-09-10T03:15:43.323 に答える
0

作業コピーに変更がある可能性があると思いますが、それはマージされることを期待している変更です。しかし、ブランチからトランクにマージして結果を作業コピーに保存すると、作業コピーの変更は考慮されません。それらは単に上書きされます。マージの前に変更をトランクにコミットするか、マージ結果を作業コピーではなくトランクに直接保存します。

于 2012-07-15T19:10:41.557 に答える