使える場面
- 複数人で開発を進めていて最新の状態に合わせたいとき
- いろいろ修正しようとしたけどよくわからなくなってやっぱり元の状態に戻したいとき
実際のコマンド
git fetch origin
git reset --hard origin/master
これでリモート環境のmasterリポジトリと同じ状態になります。
ちなみにこれは最新リポジトリと強制的に全く一緒の状態になるため自分が修正しているファイルがあった場合はそのファイルもリモートリポジトリの状態に戻されてしまうのでそれは頭に入れておきましょう。
自分の修正を残しておきたい場合はスタッシュ機能を使うことによって一時的に修正を退避しておくことができます。 スタッシュはコミットまではしたくないけど修正を一時的に保存しておきたいときに便利です。また複数ファイル修正していた場合でも特定のファイルだけ戻すことも可能です。
【応用】特定のブランチ、特定のリポジトリに合わせたい場合
先ほど紹介したコマンドだとmasterのリポジトリの最新と同じ状態になりますが、特定のブランチに合わせたい場合はmasterの部分を対象のブランチ名に書き換えましょう。
git fetch origin
git reset --hard origin/対象のブランチ
また、特定のコミットコードに書き換えることによって過去のリポジトリの状態に合わせることもできます。
git fetch origin
git reset --hard 対象のコミットコード