web-dev-qa-db-ja.com

ブランチを切り替えてもVisual Studioのソリューションエクスプローラーが更新されない

ここには基本的なものが足りないかもしれませんが、GitバージョンのTFSをいじっています。

私はVisual Studio 2015プレビュー(多分それが私の問題です)を使用しているため、ソリューションからマスターを作成し、このマスターからブランチを作成しました。バージョン2と呼びます。

バージョン2に変更を加えましたが、マージ同期などはコミットしていません。したがって、バージョン2をいじってから、チームエクスプローラーに戻り、[ブランチ]タブに移動して、メインをダブルクリックしました(右クリックスイッチも試しました)。

ソリューションエクスプローラーでバージョン2に加えた変更が表示されないことを望んでいました。これで、メインに切り替えました。しかし、そうではなく、バージョン2で行ったすべての変更がソリューションエクスプローラーに表示されています。では、現在取り組んでいるブランチをソリューションエクスプローラーに反映させるにはどうすればよいですか?

28
Bryan Dellinger

GitのモデルはTFVCとは根本的に異なります。ファイルをブランチにコミットする必要があります(変更またはブランチをリモートサーバーにプッシュする必要はありません)。変更をコミットすると、ブランチの切り替えが期待どおりに動作します。

Gitは、変更をローカルブランチに頻繁にコミットするモデルに基づいています。コードがまだコンパイルされていなくても、それをローカルブランチにコミットするのは問題ありません...いつでも後でリベースまたはチェリーピックすることができます。

24
Daniel Mann

コミットされていない保留中の変更があり、ブランチを切り替えると、Gitのデフォルトでは、変更は新しいブランチに移動されます。 Gitはこれがあなたが望むものであると想定しています。

変更をv2のままにする場合は、そのブランチチェックアウトで変更をコミットする必要があります。その後、v1ブランチに切り替えて、ソリューションの変更を確認できます。