Gitコマンドって忘れがちですよね。
パッと引き出せるようにチートシートを作成しました。
初期設定
-
git init: 現在のディレクトリを Git リポジトリとして初期化する。 -
git config --global user.name "{ユーザー名}": ユーザー名を設定する。 -
git config --global user.email "{メールアドレス}": メールアドレスを設定する。 -
git config --global core.editor "{エディタ名}": デフォルトのエディタを設定する。 -
git config --global color.ui true: カラー表示を有効にする。 -
git config --global pull.rebase true: pullをする時にrebaseするかmergeするかを設定する。 -
git config --list: git configの設定値一覧を確認する
(git config --list | grep '^\(user\.\|core\.\|remote\.\)'のようにすれば情報を絞れます)
コミット
-
git add {ファイル名}: 変更したファイルをステージングする。 -
git add .: 変更したすべてのファイルをステージングする。 -
git add -p: 変更した箇所をステージングする。 -
git commit -m "{コミットメッセージ}": ステージングしたファイルをコミットする。 -
git commit -a: ステージング不要で、すべての変更をコミットする。 -
git commit --amend: 直前のコミットを修正する。
ブランチ
-
git branch: ローカルに存在するブランチの一覧を表示する。 -
git branch {ブランチ名}: 新しいブランチを作成する。 -
git branch -d {ブランチ名}: ブランチを削除する。 -
git switch {ブランチ名}: 指定したブランチに切り替える。 -
git switch -c {ブランチ名}: 新しいブランチを作成して、そのブランチに切り替える。 -
git checkout -b {ブランチ名}: 新しいブランチを作成して、そのブランチに切り替える。 -
git merge {ブランチ名}: 指定したブランチを現在のブランチにマージする。 -
git merge --no-ff {ブランチ名}: マージコミットを作成して、履歴を残す。 -
git rebase {ブランチ名}: 指定したブランチを現在のブランチにリベースする。 -
git rebase -i {コミットID}: インタラクティブリベースを実行する。
履歴
-
git log: コミット履歴を表示する。 -
git log --oneline: コミット履歴を1行で表示する。 -
git log --graph: コミット履歴をグラフで表示する。 -
git log --graph --oneline --decorate --all: 全てのブランチのコミット履歴をグラフで表示する。 -
git diff: 差分を表示する。 -
git diff {コミットID1} {コミットID2}: 指定したコミット間の差分を表示する。 -
git blame {ファイル名}: 各行の変更を表示する。 -
git stash: 変更を一時的に退避する。 -
git stash list: 退避した変更の一覧を表示する。 -
git stash pop: 最後に退避した変更を復元する。 -
git cherry-pick {コミットID}: 指定したコミットを現在のブランチに取り込む。
リモート
-
git remote: リモートリポジトリの一覧を表示する。 -
git remote add {リモート名} {リモートURL}: リモートリポジトリを追加する。 -
git remote remove {リモート名}: リモートリポジトリを削除する。 -
git push {リモート名} {ブランチ名}: ローカルのブランチをリモートリポジトリにプッシュする。 -
git push {リモート名} --delete {ブランチ名}: リモートリポジトリのブランチを削除する。 -
git pull {リモート名} {ブランチ名}: リモートリポジトリから変更を取得してマージする。 -
git fetch {リモート名} {ブランチ名}: リモートリポジトリから変更を取得する。
タグ
-
git tag: タグの一覧を表示する。 -
git tag {タグ名}: 新しいタグを作成する。 -
git tag {タグ名} {コミットID}: 指定したコミットにタグを作成する。 -
git tag -a {タグ名} -m "{メッセージ}": アノテーションタグを作成する。