Gitコマンド
-
$config
-
$init
-
$clone
-
$remote
-
$fetch
-
$pull
-
$branch
-
$checkout
-
$status
-
$add
-
$commit
-
$push
-
$merge
-
$rebase
-
$reset
-
$revert
-
$tag
-
$stash
-
$cherry-pick
-
$log
-
$show
-
$diff
$config
Gitの設定の確認を行う。
git config --list
ユーザー名とメールアドレスを設定する。
git config --global user.name "Naughty Ghost"
git config --global user.email "works@naughty-ghost.tech"
$init
プロジェクトにgitリポジトリを作成する。
git init
$clone
リモートリポジトリをローカルにコピーする。
git clone "リモートリポジトリのURL"
リモートリポジトリをローカルにコピーする。ディレクトリ名を指定する。
git clone "リモートリポジトリのURL" "ディレクトリ名"
リモートリポジトリをローカルにコピーする。ブランチを指定する。
git clone -b "ブランチ名" "リモートリポジトリのURL"
$remote
リモートリポジトリのURLを確認する。
git remote -v
新しくリモートリポジトリのURLを追加する。
git remote add "リモートリポジトリの名前" "リモートリポジトリのURL"
リモートリポジトリのURLを変更する。
git remote set-url "リモートリポジトリの名前" "リモートリポジトリのURL"
リモートリポジトリの名前を変更する。
git remote rename "古いリモートリポジトリの名前" "新しいリモートリポジトリの名前"
リモートリポジトリのURLを削除する。
git remote remove "リモートリポジトリの名前"
$fetch
リモートリポジトリから最新の情報を取得する。この時は、まだローカルのブランチ自体は更新されない。git merge を実行してローカルに変更を取り込む。
git fetch origin main
$pull
リモートリポジトリから最新の情報を取得し、ローカルのブランチにマージする。
git pull origin main
git pullを実行したあとに競合が発生し、pullの前の状態に戻したい場合
git merge --abort
git reset --hard HEAD
リモートのタグを取得する
git pull --tags
$branch
ブランチの一覧を表示する。
git branch
ブランチを作成する。
git branch "新しいブランチ名"
ブランチを削除する。-D オプションに変更するとmainブランチにマージされていないブランチを強制削除出来る。
git branch -d "ブランチ名"
ブランチの名前を変更する。
git branch -m "新しいブランチ名"
$checkout
作業ブランチを切り替える
git checkout "ブランチ名"
作業ブランチを作成しながら切り替える
git checkout -b "新しいブランチ名"
タグからチェックアウトしてブランチを作成する
git checkout -b "新しいブランチ名" "タグ名"
$status
ファイルの変更状況を確認する。
git status
$ add
コミットしたいファイルをステージングする。
git add "ファイル名"
コミットしたい複数のファイルをステージングする。
git add "ファイル名1" "ファイル名2"
コミットしたいファイルをすべてステージングする。「.」はディレクトリとサブディレクトリにあるすべてのファイルを指すワイルドカード。
git add .
$commit
ステージングしたファイルをコミットする。ステージングを行うことでコミットファイルの確認とファイルを分割してコミットすることができる。
git commit -m "コミットメッセージ"
直前のコミットメッセージを修正する。
git commit --amend -m "コミットメッセージ"
$push
ローカルのコミットをリモートリポジトリに反映する。
git push origin main
$merge
ブランチをマージする。マージ先のブランチに移動してからマージする。
git merge "マージ元のブランチ名"
$rebase
ブランチをマージする。マージ先のブランチに移動してからマージする。branchAの内容をbranchBにマージしたい場合。
git checkout branchB
git rebase branchA
rebaseの場合、競合箇所を修正した後は--continueオプションをつけてrebaseを続ける。
git rebase --continue
rebaseを中断する場合は--abortオプションをつける。
git rebase --abort
$reset
直前のコミットを取り消す。
git reset HEAD^
直前のコミットを取り消し、変更を元に戻す。
git reset --hard HEAD^
直前のコミットを取り消す。ステージした変更は残す。
git reset --mixed HEAD^
直前の2つのコミットを取り消す。HEADについている「^」を増やすことでさかのぼるコミットを増やすことも出来る。
git reset --soft HEAD^^
$revert
コミットを取り消す。取り消した履歴は残る。
git revert "コミットID"
リブート時にコミットしない。
git revert --no-commit "コミットID"
リブート時にコミットメッセージを変更する。
git revert --edit "コミットID"
マージコミットをリブートする。マージしたコミットのどちらに戻すかを1 or 2で選択する。
git revert -m 1 "コミットID"
$ tag
タグの一覧を表示する。
git tag
コメント付きのタグを作成する。
git tag -a "タグ名" -m "コメント"
リモートリポジトリにタグを反映する。
git push origin "タグ名"
リモートリポジトリにすべてのタグを反映する。
git push origin --tags
タグを削除する。
git tag -d "タグ名"
$stash
変更を一時的に退避させる。
git stash
退避した変更を復元する。
git stash pop
退避した変更を確認する。
git stash list
特定の変更を復元する。
git stash apply "stash@{0}"
退避した変更を削除する。
git stash drop
$cherry-pick
指定したコミットを取り込む。
git cherry-pick "コミットID"
$ log
コミットログを表示する。
git log
コミット時の変更内容を表示する。
git log -p
変更があったファイルの一覧を表示する。
git log --name-only
コミットログを表示する。1行で表示する。
git log --oneline
コミットログをグラフで表示する。
git log --graph
期間で表示を絞り込む。
git log --since="2023-00-00" --until="2023-00-00"
特定のファイルのみを表示する。
git log "ファイル名"
コミットメッセージから絞り込む。
git log --grep="メッセージ"
コミットしたユーザーで絞り込む。
git log --author="ユーザー名"
$show
コミットの詳細を表示する。
git show "コミットID"
タグの詳細を表示する。
git show "タグ名"
$diff
作業ブランチの変更を確認する。
git diff
最新のコミットと差分を確認する。
git diff HEAD
ステージングした変更と差分を確認する。
git diff --cached
コミット間の差分を確認する。
git diff "コミットID1" "コミットID2"
更新履歴
- 新規作成。