🐥
よく使うのにすぐ忘れる怒りのgitコマンド集
前提
git pull
や git checkout -b hogehoge
のような shorthand は今回無視する
参考:
- git-pull Documentation - Git
よく使うのにすぐ忘れる怒りのgitコマンド集
コマンド | やりたいこと |
---|---|
git branch [local branch name] | ローカルブランチをきる |
git checkout [local branch name] | ローカルブランチを移動 |
git merge master | masterの変更をブランチに取り込む(要事前のmaster pull) |
git diff [比較元branch]..[比較先buranch] --name-only | ブランチを比較して差分のあるファル名を表示 |
git push -u origin [local branch name] | ローカルブランチをリモートにpush |
git checkout [remote branch name] | リモートブランチをチェックアウト |
git branch --delete [local branch name] | HEADにマージ済のブランチを削除 |
git branch -D [local branch name] | マージされてなくてもブランチを削除 |
git push --delete origin [remote branch name] | リモートブランチを削除 |
git stash save "message" | "message"でstashする |
git stash -u git stash -u "message" git stash --include-untracked | Untrackedファイルもstash (要git 2.x系) |
git stash list | stashの一覧を得る |
git stash pop | 最新のstashをpop(してstashを削除) |
git stash pop stash@{N} | N番目のstashをpop(最新なら{0} |
git stash clear | stashを全削除 |
git clean -d --dry-run | git clean したらどうなるか確認(含ディレクトリ) |
git clean -d --force | Untracked files をまとめて消す(含ディレクトリ) |
あまり使わないからすぐ忘れる怒りのgitコマンド集
コマンド | やりたいこと |
---|---|
git remote -v | リモートリポジトリの一覧 |
git remote rm origin | originを削除(originが消えた時など用) |
git merge --abort | mergeしたら予想外にコンフリクトしてmergeやめるとき |
git reset --hard HEAD | mergeのコンフリクト解消したけどやっぱりcommit作るのやめるとき |
git reset --hard HEAD^ | commit したけどやっぱりやめる時 |
git reset --hard [任意のコミットのハッシュ値] | そこの状態に戻す |
git cherry-pick -m 1 [merge hash] | 別ブランチのマージコミットをcherry-pickするときなど |
git reset HEAD <file_name> | 間違って add しちゃったものを戻す |
git reset HEAD | 間違って add しちゃったものを全部戻す |
秘密のgitコマンド集
コマンド | やりたいこと |
---|---|
git log --pretty=fuller | 直近ログの簡易表示 |
git commit --amend --date="Sun Mar 14 13:51:16 2021 +0900" | 直近commitの AuthorDate 書き換え |
git rebase HEAD~1 --committer-date-is-author-date | 一つ前のcommitのCommitDate を AuthorDate に合わせて修正 |
参考
- 【git】マージしたけどやっぱりやめたい時のやり方4種類 - Qiita
Discussion