ツリーの競合を解決する


84

現在のシーンでツリーの競合を解決する方法。

C:\DevBranch
C:\MyBranch

両方のブランチを更新しました。MyBranchを編集してから、コミットし直しました。次に、これらの変更をDevBranchにマージします。マージを実行すると、「ツリーの競合」が発生します

The last merge operation tried to add the file 'abc.def', but it was already added locally.

How do you want to resolve this conflict?
Keep the file from repository
Keep the local file

どうすれば解決できますか?

回答:


167

対立を解決するためにできることは

svn resolve --accept working -R <path>

どこ <path>競合が発生するはどこですか(リポジトリのルートになる可能性があります)。

説明:

  • resolvesvn競合を解決するように求めます
  • accept working 作業ファイルを保持するように指定します
  • -R 再帰の略

お役に立てれば。

編集:

以下のコメントで言われたことを要約すると:

  • <path>競合するディレクトリである必要があります(C:\DevBranch\OPの場合)
  • 紛争の原因は
    • の使用 svn switchコマンド
    • またはSwitch working copy to new branch/tagブランチ作成時にオプションをチェックした
  • 競合の詳細については、Tortoiseのドキュメントの専用セクションを参照してください。
  • コマンドを実行できるようにするには、CLIツールをTortoiseと一緒にインストールする必要があります。

コマンドラインクライアントツール


パスはどうあるべきですか?C:\ DevBranchまたはC:\ MyBranch?
coure2011 2012

2
する必要がありますC:\DevBranch。ところで、svn switchこれら2つのフォルダーのいずれかでコマンドを使用しましたか?
Yannick Blondeau 2012

1
ブランチを作成するときに、「作業ディレクトリの切り替え」を使用したと思います
coure2011 2012

@LukeTortoiseと一緒にCLIツールをインストールした場合はこのようにできます。ただ、cdあなたの作業コピーのルートにして実行しますsvn resolve --accept working -R ./。Tortoiseでこれを行う方法の詳細が必要な場合は、ドキュメントの専用セクションを確認してください...これがお役に立てば幸いです。
Yannick Blondeau 2013

0

基本的に、ブランチのフォルダ構造に何らかの再構築があると、ツリーの競合が発生します。競合フォルダを削除してsvn clean1回使用する必要があります。これがあなたの対立を解決することを願っています。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.