KameWalk

よく使う Git コマンドメモ

GitHub

ブランチを作成して移動

Terminal window
git switch -c <branch-name>

git checkout -b <branch-name>でも同じことが出来ますが、switchの方が新しいので、こちらを使っています。 checkoutよりswitchのほうが入力しやすいという理由もあります。

ブランチの名前を変更

Terminal window
# 変更したいブランチにいるとき
git branch -m <new-branch-name>
# 変更したいブランチと異なるブランチにいるとき
git branch -m <old-branch-name> <new-branch-name>

作業中のブランチ名を修正したいときが主なので、git branch -m <new-branch-name>を使うことが多いです。

ブランチを削除

Terminal window
git branch -D <branch-name1> <branch-name2> ...

いらなくなったブランチを削除するときに使います。 -Dオプションは強制削除です。 -dだとマージされていないブランチを削除できず、「このブランチ消したかったら-Dを使ってね」みたいなエラーが出るので、いつも-Dを使います。

最近知ったんですが、複数指定することでいらないブランチは一気に消せます。 もうチマチマ消すのはやめましょう。

コミットの取り消し

Terminal window
git reset --soft HEAD^

直前のコミットを取り消すときに使います。 こちらの記事などでもっと前のコミットを取り消す方法も紹介されていますが、なんか怖いのでやったことないです。

コミットを修正

Terminal window
git add <file>
git commit --amend --no-edit

コミットメッセージはそのままで直前のコミットに追加し忘れたファイルや、追加の修正があるときに使います。 例えばfix typoみたいなコミットをつくらずに済んで嬉しいです。 リモートにプッシュしたあとにやるとgit push -fすることになるので、プッシュしてしまったら大人しくfix typoします。

コミットメッセージを修正したい場合はgit commit --amend -m <message>で OK。

変更にメッセージをつけて一時的に退避

Terminal window
git stash save -u <message>

作業中に急に別のブランチに移動したいときや、作業中の変更を一時的に退避したいときに使います。 -uオプションをつけないと新規作成したファイルを退避できないので基本つけます。

退避した変更を反映させるときはgit stash listで確認してから以下のコマンドで反映させます。一番新しいものを反映させたい場合はstash@{N}いらないです。

Terminal window
git stash pop stash@{N}

参考