🎃

git便利コマンド集

2024/11/22に公開

背景

何かしら git で困ったことや、実際に使用した git のコマンドを集めた備忘録です。

適宜内容を更新していきます。

git diff

特定のコミットと現状のフォルダ or ファイルの差分を確認する

git diff <差分確認したい特定のcommit ID> <差分確認をしたい作業ディレクトリのフォルダ名 or ファイル名>

git commit

直前のコミットメッセージを修正する

  1. コミットメッセージをローカルで修正する
git commit --amend -m "新しいコミットメッセージ"

--amend を使うことで、最新のコミットメッセージを修正できます。

  1. リモートリポジトリに強制プッシュする
git push --force

push 済みのコミットメッセージを上書きするには、--force オプションをつけて強制的にプッシュする必要があります。

push 済みのリポジトリのコミットメッセージを修正する

  1. 変更したいコミットの親コミットを指定
git rebase -i HEAD~5
  1. エディタで表示されるリストで、変更したいコミットの pick を edit に変更:
pick 88b18c4 Type Union
edit a0c2d35 hoge Literal //'hoge'を'Type'に変更する
pick 569f1b3 Type enum
  1. git commit --amend を実行して、コミットメッセージを「Type Union」に修正して保存します。
git commit --amend
  1. rebase を続行:
git rebase --continue

5.リモートリポジトリへの反映: コミットメッセージを変更した後、git push -f コマンドで強制的にリモートリポジトリに反映できます。

git stash

作業内容をスタッシュに一時避難する

利用背景

  • branch を切り替える前に作業をしてしまった場合
  • 作業途中に、別ブランチに切り替える必要がある場合
  • 色々やったけどうまくいかない、消すのはアレだけど、元に戻したい

作業手順

  1. git stash コマンドで作業内容を一時退避させる
git stash
  1. git stash apply コマンドで退避させた作業内容を戻す

git checkout

直前のブランチに移動する

  1. -(ハイフン)を指定することで、直前にチェックアウトしていたブランチに移動できます。

コマンド例: git checkout -

現在のブランチを確認

$ git branch --show-current
develop

ブランチを feature/hoge に切替

$ git checkout feature/hoge

現在のブランチを確認

$ git branch --show-current
feature/hoge

ハイフンを指定して、一つ前のブランチに切替

$ git checkout -

現在のブランチを確認

$ git branch --show-current
develop
GitHubで編集を提案

Discussion