Visual Studio 2015-Team Explorer/Team Services Gitで特定のバージョンのファイルを(特定のコミットから)取得する方法はありますか?
以前のバージョンのファイルを使用してソリューションを実行し、実行方法を確認してから、最新バージョンに戻って開発を継続したいだけです。
ブランチを作成しませんでした。私は「マスター」ブランチでコミットし続けました。
Visual Studio 2015では、履歴を表示(ActionsチームエクスプローラーのChangesパネルのメニュー):
次に、興味のあるコミットを右クリックします。
そこからブランチを作成できます:
Visual Studioでコミットをチェックアウトする方法がわかりません。
コマンドラインを使用して、使用するコミットSHAのチェックアウトを実行できます。
git checkout 9eab01d9
完了したら、マスターをもう一度チェックアウトします。
git checkout master
切り離されたヘッドでの作業に関する警告が表示される場合があります。その場合、 一時的にブランチを作成 :
git checkout -b temp-branch-name 9eab01d9
Gitコマンドラインに慣れるのは良い考えです。VisualStudioツールが登場しますが、多くの機能が欠けています。
私の元の答えはソリューション全体を特定のコミットにリセットすることを指摘してくれたMatt Frearに感謝しますが、質問は1つのファイルの特定のバージョンを使用しながら最新のものを保持する方法でした他のすべての。誰かが便利だと思った場合に備えて、元の投稿の内容を一番下に保持します。
ソリューション全体を最新に保ちながら、個々のファイルの古いバージョンを使用するには:
Visual Studio 2015 Update 3の使用:
スクリーンショットを追加し、回答をクリーンアップ/再フォーマットしてフォローしやすくしますが、修正された回答を入手して、再訪する時間があるまでより正確に質問に対処したいと考えました。
これで、変更を元に戻したファイルを除き、リポジトリ内のすべてのファイルの最新のものが得られます。 Team Explorer→Changesの古いバージョンを使用している1つのファイルのみを表示するために、最新のコミットで混合をリセットできますただし、ソリューションを実行するだけであれば、この手順は不要です。
ソリューション/ソースリポジトリ全体を特定のコミットにリセットするには:
Visual Studio 2015 Update 3の使用:
[〜#〜] important [〜#〜]
このアプローチでは、発信コミットはすべて失われます。
ステップ1(発信コミットをプッシュする)を必ず実行してください
目的のコミットを右クリックして、Reset→Reset and Delete Changes(--hard)を選択します。 。 Team Explorer→Syncで、[履歴の表示]ウィンドウで、目的のコミットから最新のコミットへの着信コミットで終了しますリモートブランチ、およびローカルコードが目的のコミットと一致します。
完了したら、プルインTeam Explorer→Syncを実行して、ローカルブランチをリモートブランチの最新のコミットに移動します。
this great answer を参照してください。これは、 'git reset'コマンドと--hardと--mixedの違いを説明しています。
(これはVS2015とVS2017の両方で機能します。)
これが最も簡単な方法だと思います。
これで、そのファイルでやりたいことが何でもでき、完了したら保留中の変更を元に戻すことができます。