Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationEventAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
51
Help us understand the problem. What is going on with this article?

More than 3 years have passed since last update.

@ikenji

git checkout できないとき、私はこうしてます。(※知ってる方法は2つ)

git checkout master

masterに限らない話ですが、
ブランチを切り替える時に下記エラーが出て切り替えられないことがあります。

error: Your local changes to the following files would be overwritten by checkout:
    abc.txt
    hogehoge.ctp
Please, commit your changes or stash them before you can switch branches.
error: The following untracked working tree files would be overwritten by checkout:
    abc.txt
Please move or remove them before you can switch branches.
Aborting

そんな時はこうしています

変更履歴を スタック する

git stash save 'なんのスタックか自分がわかるメモ'

  • 変更履歴を戻すには(元のブランチに戻した時など)
    git stash pop
    ※複数回スタック(git stash)していた時は :arrow_lower_left:
    git stash list (スタックを確認)
    git stash pop [↑で確認したハッシュ値]


とりあえずコミットしておく(オススメ)

上記git stashだと思わぬハプニングでスタックが消えてしまったら
変更履歴は消えちゃいます。 (普通は無いですが...)
なのでとりあえずコミットしておきましょう。
git add -A
git commit -m '[コミットメッセージ]とりあえずのコミット!'

※プッシュしてしまわないように気をつけてください!

  • 変更履歴を戻すには(元のブランチに戻した時など)
    コミットしたブランチに戻ってから
    git reset --soft HEAD^
    git reset


今回2つの方法を紹介しました。
ですが、ちゃんとコマンドを理解して使わないと
せっかくの編集が消えちゃう可能性がありますので気をつけてください。

(追記)

2つ目の方法の続き。少し応用かもしれません。
違うブランチに変更内容を反映させたいときは、
一時的に作ったコミットを反映させたブランチにもってきてから
reset --softすればできます。

git checkout [反映させたいブランチ]
git cherry-pick [一時的に作ったコミットのハッシュ値]
git reset --soft
git reset



:smiley: 過去に書いた Git関連の記事 :arrow_double_down:

Qiita-何も知らない人がGitとGitHubを独学で知る
Qiita-プルリクエストで表示される差分の仕組みを GitHub に問い合わせたときの話
Qiita-ブランチ間の差分をコミット単位で知る・見る
Qiita-git 差分を見る

51
Help us understand the problem. What is going on with this article?
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
51
Help us understand the problem. What is going on with this article?