2011-08-06 32 views
20

私がsvn updateをして、SVNがいくつかの相違点について私に尋ねたとき、私はそれを延期するように言いました。SVN更新の延期 - >解決方法?

ここで私はそれらを解決したいと思いますが、はちょうどsvn diffが私に違いを示すにもかかわらず、私に "最新のもの"を教えてくれます。

どのようにしてsvn updateに紛争について質問しますか?

+0

'svn status'についてはどうですか? 'svn update'はセントラルリポジトリに何も追加されていない限り何も出力しません – zerkms

+0

' svn status'は何を表示しますか?チェンジリストについて何か? –

+0

@zerkms: 'svn status'は前面に'? 'が付いたたくさんのファイルと' M'と 'C'ファイルのいくつかを示しています。 – Mehrdad

答えて

16

svn updateは、それらを処理しているため、競合について再度尋ねません。 svn statusの意味については

?ファイルはSVNによって管理されていない、Mものは変更されている、とCものは、あなたが延期競合ものです。 Cファイルの1つを開いて見て、それを見て、あなたのコードにあなたが衝突がどこにあるかを示すマーカーを表示します。これらのそれぞれを編集し、競合を修正し、マーカーを削除する必要があります。そして、あなたはsvn resolveを実行して、SVNに問題がないことを伝える必要があります。 オプションとGoogleを使用して、実行する前にsvn resolveの仕組みを確認してください。

これをすべて実行しないと、svn commitは機能しなくなります。

svn statusは、svn diffはsvn updateの後にローカルで発生したことしか表示しないため、理解することは本当に重要です。しかし、svn status -uは、リポジトリに問い合わせた後で概要を示します。最も重要なことは、コンフリクトのあるファイル(1列目のC)を明確に識別するためです。エディタで開き、手動でチェックする必要があります。

+27

あなたの答えは役に立ちますが、あなたのトーンはむしろ失礼です。私はオリジナルのポスターと同様の問題を抱えています( 'svn merge'の後にいくつかの変更を延期しました)、そしてこのSOのページはGoogleの最初の結果でした! – knite

+1

修正:svn statusは、-uを指定した場合にのみリポジトリに移動します。そうでなければ、.svnディレクトリ内のファイルを参照します – ahawtho

6

svn commitを実行すると、競合しているファイルの一覧が表示されます。

svn resolve --accept=theirs-full '/path/to/the/file' 

可能な競合解決モードのリストのためのタイプsvn resolve --help: あなたは、その後のようなコマンドを発行することにより、競合を解決することができます。

関連する問題