あなたls
は別のファイルを示しています:web/web/browser.xslt.xml
ではなくweb/web/WEB-INF/xslt/browser.xslt.xml
. システムにないweb/web/WEB-INF/xslt/browser.xslt.xml
のですか?
私はいつもこれらの不可解な対立に出くわし、これが解決されるまで何もできないのでイライラします. diff-fullを実行してから、何をマージするか、またはどのようにマージするかを決定することもできると思いますが、問題を考えて解決するのに時間をかけることができないため、常にイライラしています。
更新を強制終了し、svn status
. これで理由がわかります。でファイルを削除し、svn delete
このファイルへの更新が入っている可能性があります。あなたがファイルを追加し、他の誰かも追加した可能性があります。ドライブにファイルの非 Subversion バージョンがあり、誰かがそれを Subversion に追加した可能性があります。ときどき、その対立は財産内の対立にすぎないことに気づきsvn:mergeinfo
ます。
最も簡単な方法は、問題を取り除き、現在リポジトリにあるものを受け入れることです。
- ファイルに対して実行します
svn resolved
。これにより、競合状態から抜け出すことができます。
- 次に、ファイルに対して a
svn status
を実行します。これにより、Subversion が何をしたかが表示されます。たとえば、このファイルを削除したか、このファイルを追加しましたか。
- ファイルが変更されていることがわかった場合は、そのファイルに対して diff を実行して、何が変更されたかを確認してください。差分もプロパティ値になる可能性があることに注意してください。
- ファイルが作業コピーに存在する場合は、安全のために、ファイルを別の場所にコピーしてください。
- その
svn revert
上で行います。ファイルが初期状態であることを示すsvn status
はずです。
- これで
svn update
、ファイルに対して実行できます。これで、リポジトリから最新のコピーが取得されます。
すべてが明確になったら、続行する方法を決定できます。これが私が行った変更と誰かが行った変更との間の真の矛盾であったとしても、私はまだこの方法で行うことを好みます. vimdiff
更新の途中で行うよりも、違いが何であるか、何を更新するかをはるかに簡単に確認するために使用できます。