ローカル環境でファイル変更していたことに気づかずGitHubのリポジトリから最新データを持ってこようとしてしまい、コンフリクトが発生してしまいました。その解決方法を調べたのでメモしていきます。
方法1:未コミットの変更を破棄
ローカル環境でまだコミットされていない変更を消去します。
$ git reset --hard
HEAD is now at b59d735 rails new実行、その他設定済み
これにより、作業ディレクトリとステージングエリアの変更がすべて削除され、リポジトリの最後のコミットと同じ状態に戻ります。
⚠️ステージングエリアにも作業ディレクトリにも残らずコミットがまるごと削除されるので注意が必要です。
方法2:未コミットの変更を一時的に退避させる
未コミットの変更がある場合git stashで一時的に変更を退避させる
git stash
これにより、変更がスタッシュに一時的に保存され、作業ディレクトリはクリーンな状態に戻ります。
⚠️スタッシュは変更を一時的に保管するのに便利ですが、複数のスタッシュがある場合は注意が必要です。
後で戻すには下記コマンドで実行します。
git stash apply
変更を破棄したり、退避させたら、再び git pull origin main を実行してリモートリポジトリから最新の変更を取得します。
コメント