LoginSignup
0
3

More than 3 years have passed since last update.

よく使うgitコマンド集

Last updated at Posted at 2018-12-07

随時追加

git log系

特定のファイルのコミット履歴を確認したい時

git log 対象のファイル

特定の期間のコミット履歴を確認したい時

git log --since="開始日" --until="終了日"

特定の人のコミット履歴を確認したい時

git log --author='コミット者の登録名'

コミットメッセージで検索したい時

git log --grep='コミットメッセージ'

ある特定の文字列が更新・削除されたリビジョンを取得する

git log -S "対象文字列"

ある特定の文字列が更新・削除されたリビジョンと行を取得する

git log -p -S "対象文字列"

プロジェクトのコミットした行数を取得する

git log --numstat --pretty="%H" --author='名前' --since=2018-08-28 --until=2018-08-29 --no-merges | awk 'NF==3 {plus+=$1; minus+=$2} END {printf("%d (+%d, -%d)\n", plus+minus, plus, minus)}'

git reset系

直前のコミットだけブランチを間違ってしまった時

git reset --soft HEAD^

直前のコミット・プッシュのブランチを間違ってしまった時

git reset --soft HEAD^
git push -f origin 変更内容を消したいブランチ

特定のコミットを削除したい場合

git reset --soft ハッシュ値

git commit系

直前のコミットだけコミットメッセージを間違ってしまった時

git commit --amend -m "直したいメッセージ"

git revert系

特定のcommitを打ち消したい時(元に戻したい)

git log -S '戻したい文字列を覚えて入れば' ファイル
コミットIDを確認
git revert コミットID

git rebase系

直近のコミットメッセージをまとめたい時

git rebase -i HEAD~まとめたいコミット数

新しくまとめたコミットメッセージを作る場合(squash)
pickをsquashに変更し保存(対象のコミットメッセージの冒頭)
コミットメッセージを入力し保存

既存のまとめたコミットメッセージにする場合(fixup)
pickをfixupに変更し保存(対象のコミットメッセージの冒頭)

git push -f origin 対象のブランチ

まとめ方を間違えた時

git rebase --abort

git cherry-pick系

別ブランチを切って、他の複数ブランチの特定のコミットをまとめたい時

git checkout -b ブランチ名
git cherry-pick コミットID

git blame系

特定の行のコミット履歴を見たい時

git blame -L 該当開始行,該当終了行 ファイル名

特定箇所のコミット履歴を見たい時

git blame -L /特定文字列/ ファイル名

その他

特定のファイルのコミット履歴とファイルを抹消したい時

git filter-branch -f --index-filter 'git rm --cached --ignore-unmatch ファイル名' HEAD
git gc --aggressive --prune=now
git push -f

他のユーザーも利用しているリポジトリなどであった場合はクローンし直してもらう必要がある

特定のコミットの差分を確認したい時

git show コミットハッシュ
0
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
3