⚙️初期設定
Gitがインストールされているか確認
git --version
名前を登録
git config --global user.name "Taro"
メールアドレスを登録
git config --global user.email "you@example.com"
デフォルトブランチを main に
git config --global init.defaultBranch main
エディタを VS Code に
git config --global core.editor "code --wait"
改行コードの自動変換(Windows)
git config --global core.autocrlf true
alias を設定
git config --global alias.st status
認証情報を保存
git config --global credential.helper store
現在の設定を一覧で見る
git config --global --list
📦リポジトリの作成・状態確認
リモートからクローン
git clone <URL>
💾コミットを作る
1ファイルだけステージング
git add <file>
コミット(メッセージ付き)
git commit -m "メッセージ"
直前のコミットを修正
git commit --amend
ステージングをスキップしてコミット
git commit -am "メッセージ"
🔍履歴を見る・調べる
グラフ付きで全ブランチ
git log --oneline --graph --all
ステージング済との差分
git diff --staged
コミット間の差分
git diff <id1> <id2>
リネーム前まで履歴を追跡
git log --follow <file>
作者で絞る
git log --author="Taro"
🌿ブランチ操作
作って切り替え
git switch -c <name>
削除(マージ済み)
git branch -d <name>
強制削除
git branch -D <name>
🔀マージ・統合
ブランチを取り込む
git merge <branch>
履歴を一直線に整える
git rebase <branch>
1コミットだけ取り込む
git cherry-pick <id>
⚔️コンフリクト解消
競合中のファイル一覧を表示
git diff --name-only --diff-filter=U
自分側(HEAD)の内容で解決
git checkout --ours <file>
相手側の内容で解決
git checkout --theirs <file>
解決済みとしてマーク
git add <file>
解消後にマージコミットを作成
git commit
マージを中止して元に戻す
git merge --abort
rebase 中の競合解消後に続行
git rebase --continue
rebase を中止して元に戻す
git rebase --abort
pull で merge ではなく rebase
git pull --rebase
視覚的なマージツールを起動
git mergetool
⏪取り消す・戻す
編集を捨てる(add前)
git restore <file>
ステージングから外す
git restore --staged <file>
直前のコミットを修正
git commit --amend
HEAD を巻き戻す(変更は残す)
git reset --soft <id>
HEAD を巻き戻す(全部消す)
git reset --hard <id>
公開済みコミットを取り消す
git revert <id>
ファイルを過去のバージョンに戻す
git restore --source=<id> <file>
消したコミットを復活させる起点を探す
git reflog
reflog のIDで状態を復元
git reset --hard <reflog-id>
📥一時退避(stash)
メッセージ付きで退避
git stash push -m "WIP: 説明"
🏷️タグ
注釈付きタグを作成
git tag -a v1.0 -m "first release"
タグを1つpush
git push origin v1.0
すべてのタグをpush
git push origin --tags
タグを削除(ローカル)
git tag -d v1.0
タグを削除(リモート)
git push origin --delete v1.0
☁️リモート操作
リモートを登録
git remote add origin <URL>
リモート一覧(URL付き)
git remote -v
初回push(追跡設定)
git push -u origin main
リモートとローカルの差分
git diff main origin/main
リモートブランチを削除
git push origin --delete <branch>
リモートのURLを変更
git remote set-url origin <URL>
🚫.gitignore と追跡対象
既に追跡中のものを追跡解除
git rm --cached <file>
ファイル名を変更
git mv <old> <new>
🌳並行作業(worktree)
別ブランチを別フォルダで並行チェックアウト
git worktree add ../proj-feature feature/login
新ブランチを作って別フォルダにチェックアウト
git worktree add -b hotfix ../proj-hotfix main
現在の worktree 一覧
git worktree list
使い終わった worktree を削除
git worktree remove ../proj-feature
worktree の参照だけ掃除
git worktree prune
一致する項目がありません
💡 このチートシートは レッスン を補完するためのもの。コマンドの意図や注意点はレッスンに詳しく書いてあります。「詳しく →」リンクから当該レッスンに飛べます。