Git コマンド辞典
打つ前の状態、実際に出る結果、済んだかの確かめ方、失敗したときの戻し方を、1 つのコマンドごとにまとめています。

困り ごとから引く
コミットを
取り消したい まだ
push していなければ 作り直すか reset、 push した あとなら revert で 打ち消すコミットを 足します。 push が
弾かれた 強制 push の
前に、 fetch と status で 相手の 側にだけある コミットを 確かめます。 衝突した
印を
消して 残したい 形に 直し、 add で 直したと 伝えてから 続けます。 間違えて
reset --hard した コミット
済みの 変更なら、 reflog で 動かす前の 番号を 探して 戻せます。 コミットしていない 変更は、 通常は 戻せません。 rebase の
途中で 分からなくなった status で
途中かを 確かめ、 直して 続けるか、 abort で 始める 前に 戻ります。 pull が
止まって 進まない 手元と
リモートの 両方に 別の コミットが あります。 取り込み方を 選んで 打ち直します。
コマンド から引く

git add
変えた
ファイルを、 次の コミットに 入れる 物と して 選ぶ。 ファイルの 中身は 変えない。 
git commit
ステージに
載せた 変更を、 1 つの 記録と して 履歴に 残す。 
git stash
コミットしていない
変更を 一時的に しまって、 作業 フォルダを きれいな 状態に 戻す。 
git worktree
同じリポジトリの
別の ブランチを、 別の フォルダに 並べて 開き、 作業中の 変更に 触れずに 作業する。 
git reset
ブランチの
先頭を、 前の コミットへ 戻す。 ファイルの 扱いは 3 つの 形から 選ぶ。 
git restore
作業中の
ファイルを、 記録した 状態へ 戻す。 ステージから 下ろすのにも 使う。 
git revert
過去の
コミットを 打ち消す、 新しい コミットを 足す。 履歴は 消さないので、 push した あと でも 使える。 
git cherry-pick
別の
ブランチの コミットを 1 つだけ 選んで、 いまの ブランチに 写し取る。 
git merge
別の
ブランチの 変更を、 いまの ブランチへ 取り込んで 1 つに まとめる。 
git rebase
自分の
コミットを、 別の ブランチの 先頭の 後ろへ 付け替えて、 履歴を まっすぐに そろえる。 
git rebase と
git merge の 違い どちらも
ブランチの 変更を まとめる。 履歴を 残すなら merge、 一本に そろえるなら rebase。 
git pull
リモートの
新しい コミットを 取り込み、 手元の ブランチを 最新に する。 
git push
手元の
コミットを、 GitHub などの リモートリポジトリへ 送る。 
git status
作業中の
ファイルが、 いまどの 段階に あるかを 一覧で 見せる。 ファイルも コミットも 変えない。