完全なエラーメッセージは次のとおりです。
"プロジェクト 'my.project.name'はソース管理下にあります。このプロジェクトをソース管理に登録するときにエラーが発生しました。このプロジェクトに変更を加えないことをお勧めします。"
エラーメッセージを表示せず、csprojファイルを開いてプロジェクトを正しくロードし、「scc」で始まる名前のノードをすべて削除できるようです。ただし、ソリューションのソース管理設定を使用することを確認する必要があります。ソリューションを開くたびに。
助言がありますか?
他の誰かが同じ問題を抱えている場合:プロジェクトのバックアップを取り、ソリューションからプロジェクトを削除し、ソリューションなしでソリューションをソース管理にチェックインしてから、プロジェクトを再度追加することで解決しました。
幸いなことに、これは新しい小さなプロジェクトであり、歴史はほとんどありません-大きな古いプロジェクトでこれを行う必要はありません...
もしあなたがどこにいるのなら、私はおそらくtbergstedtの提案を最初に試すでしょう。
プロジェクトの* .csprojファイルを開いて、次のタグを置き換えてください:
<SccProjectName>SAK</SccProjectName>
<SccLocalPath>SAK</SccLocalPath>
<SccAuxPath>SAK</SccAuxPath>
<SccProvider>SAK</SccProvider>
と
<SccProjectName>
</SccProjectName>
<SccLocalPath>
</SccLocalPath>
<SccAuxPath>
</SccAuxPath>
<SccProvider>
</SccProvider>
ソリューションを閉じ、VSを閉じ、VSを再度開くと、問題が解決します。
問題は*.csproj.user
にあり、*.csproj.vspscc
を使用したソース管理がある場合(VS2012)。両方を削除し、ソリューションを閉じ、VSを閉じ、実行者(できれば管理者)を使用してVSを再度開くと、問題ないはずです。
.csprojファイル内の以前のソース管理バインディングを削除してから、File-> Source Control-> Change Source Control ...を使用して(再)バインドします
VS2012では、ツール->オプション->ソース管理->プラグインセクション。現在のソース管理プラグインを変更します。
プロジェクトをMercurialからGiTに移動した後、同じ問題が発生しました。 「現在のソース管理プラグイン」をMercucialからVisualHGに変更します(これは拡張機能からインストールする必要があるため、最初はこのオプションがありません)。
他の誰かがソリューションにプロジェクトを追加したときに問題が発生し、最新のソリューションを入手しました。 Visual Studioを再起動するだけでした。
ソース管理に他のツールを使用している場合に備えて。 GitとMercurialのソースツリーでは、VSで現在のソース管理プラグインを[なし]に設定するだけです。
VS2015では、ツール->オプション->ソース管理->プラグインセクション。現在のソース管理プラグインを[なし]に変更します。
上記のいずれもうまくいかず、他のプロジェクトでは問題のないライブラリに問題があったため、個々のプロジェクトではなくソリューションの問題であると考えるのは合理的でした。
私のために働いたのは、メモ帳でソリューションファイル(.sln)を開くことです(安全のために最初にバックアップを取ります)。また、セクションがある場合:
GlobalSection(SourceCodeControl) = preSolution
...
EndGlobalSection
次にそれを削除し、ソリューションを保存して再度開きます。私のために修正された問題。