【Git】checkoutに失敗した時の対処

Git

error: Your local changes to the following files would be overwritten by checkout

Please, commit your changes or stash them before you can switch branches.

こんなエラーが出てチェックアウトに失敗した場合の対処について。

タップできるもくじ

Gitでcheckoutに失敗した時の対処

上記のエラーでは、

「ブランチを切り替える前に変更をコミットするか、隠してください」

と言われています。

どういうことでしょうか。

checkoutに失敗する原因

Gitではcommitすることでローカルリポジトリに記録します。

ゲームのセーブデータをセーブするイメージですね。

上記のエラーの原因は、コミットしていない(セーブしていない)のに他のブランチに行こうとしているので、

「セーブしてないのにほんとにいいの?」と止められているわけです。

checkoutのエラーの解決策

解決策としてはcommitするか、

stashを使って一旦データを隠してチェックアウトする方法があります。

stashは「隠れ場所」とか「退避」という意味です。

git stash

上記コマンドで一旦データを退避させると、チェックアウトできます。

チェックアウトしたあとで変更したデータを取り出して、移動先のブランチに反映させることができます。

revertしたい時などにエラーが出てstashcommitを求められる時も、同様に使えます。

その他のStashの使い方

git stash list

退避した作業の一覧を確認できます。

git stash pop

退避した最新の作業を元に戻します。引数を指定することで特定の作業を復元することもできます。

git stash drop

退避した最新の作業を削除します。引数を指定することで特定の作業を消すこともできます。

git stash clear

退避した作業をすべて削除します。

独学での学習に疲れた時は…

プログラミングスクールを利用してみるのもひとつの手です。

わからない時や詰まってどうしようもない時に教えてくれる人がいたら、理解の早さと深さが断然違います。

おすすめは、今なら無料体験できるです。

「転職」も「副業」も、パーソナルメンターがマンツーマンでサポートしてくれます。

Git

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!
タップできるもくじ
閉じる