バージョン管理(SVN)されているVisual Studio C#プロジェクトがあります。私はいつもプロジェクトを問題なくコミットして更新しました。しかし、数時間前にプロジェクトを起動/再構築しようとすると、Visual Studioは次のエラーをスローします。
ファイルに無効な値「<<<<<<< .mine」があります。パス内の文字が正しくありません。
この問題を解決する方法がわかりません。私は何をすべきか?
これは、svnが競合に遭遇したときに起こります。ファイルを変更し、サーバー上のファイルが変更されたため、(簡単に)自動的にマージできません。 あなた正しい解決策を今すぐに決める必要があります。
Subversionは、差分をソースファイルに追加します(そして、その隣にOriginalName.mine(変更なし)およびOriginalName.rsomething(変更なし、サーバーバージョン)と呼ばれるファイルを作成します)。
競合を修正し、これがresolvedであることをSubversionに伝えます。
objフォルダーを削除するだけで正常に機能します。
エラーをスローするファイルに含まれてはならないコードを削除し、拡張子が.mine、.<somerevision>
および.<some_other_revision>
の3つのファイルを削除します。 「競合」を含むようになったsvn更新ファイル。これらの競合は手動で解決する必要があります。通常、これはファイルを編集し、他の誰かが同じファイルを編集して変更をチェックインし、変更されたファイルをチェックアウトするときに注意を払わなかったことを意味します。
obj folderにあるものをすべて削除します。
svn
バージョン管理からobj folderを削除します。すべてのビルドで更新され、他の開発者がソリューションに変更をコミットすると、SVNはobjフォルダファイルをマージしてエラーを発生させることができないため
ファイルに無効な値「<<<<<<< .mine」があります。パス内の文字が正しくありません。
Subversion bookの Basic Usage の章を読んでください。 手作業による競合のマージ に関するセクションがあり、表示されている競合マーカーを説明しています。
デバッグフォルダーを削除するとうまくいきました(上記のコメントではなく回答を参照)。これは、svnの1つのセクションから12個のフォルダーを新しいセクションに移動した後に取得しました。したがって、プロジェクトを移動した後にこれを取得し、エラーが実際のファイルを指していない場合、これはおそらく問題です。
AnkhSVN または VisualSVN がインストールされている場合、これを解決するには、ソリューションエクスプローラーでファイルを右クリックし、編集の競合を選択するのが最も簡単です。
これにより、変更されたファイルがマージエディターで開きます。 (ツール->オプション->ソース管理-> AnkhSVNのSubversionユーザーツールを参照してください)。自由に使用できる SourceGear DiffMerge またはTortoiseMergeなどの優れたマージツールを使用すると、マウスを数回クリックするだけで競合を解決できます。
IDEを閉じてから、objフォルダーを削除し、IDEを再起動し、コードを再構築しました。これでうまくいきました。
1)ファイルで編集した内容をローカルに保存するだけです
2)ファイルを元に戻す
3)SVNから更新する
4)ローカルの変更を貼り付ける
ファイルが解決済みとしてマークされる大規模にこれが発生しましたが、競合メタデータはまだそこにあります。変更されたファイルを単純に元に戻すことができない場合など、ビジュアルスタジオがこれらを見つけるための正規表現を作成しました。
プロジェクト内:
odj folder -> Debug -> project name.csproj.Filelistabsolute.txt(snb.csproj.Filelistabsolute.txt)
テキストファイル内>>>>>>>.mine
および>>>>>>>.r150
は、プログラムが機能するものを削除するために発生します
TortoiseSVNを使用している場合は、ファイルの[競合の編集]と呼ばれる右クリックオプションが必要です。これによりTortoiseMergeが表示され、ファイルに貼り付けられた不快な表記を読み取ることができます(実際、コードを壊して問題があることがわかり、盲目的にチェックインしないようにします)。
TortoiseMergeはそれを適切に読み取り、3者間マージを表示します。これは私が探していたものでした。ただし、.mineファイル、.rxxxファイル、および.ryyyファイルを個別に作成することは事実ですが、これらすべてを処理するためのさまざまな手動およびコマンドラインの方法があります。