Gitコマンドチート集
このページでは、Gitコマンド一覧を記述します。
リポジトリの作成と設定
git init
空のGitリポジトリを作成します。
git clone <リポジトリURL>
リモートリポジトリを複製して、ローカルリポジトリを作成します。
git config --global user.name <ユーザ名>
ユーザ名を設定します。
git config --global user.email <メールアドレス>
メールアドレスを設定します。
ブランチの操作
git branch
ブランチの一覧を表示します。
git branch <ブランチ名>
新しいブランチを作成します。
git branch -d <ブランチ名>
ブランチを削除します。
git checkout <ブランチ名>
指定したブランチに切り替えます。
変更の追跡とステージング
git status
リポジトリの状態を表示します。
git add <ファイル名>
指定したファイルをステージングエリアに追加します。
git add .
変更されたすべてのファイルをステージングエリアに追加します。
git reset <ファイル名>
ステージングエリアから指定したファイルを削除します。
git reset
ステージングエリアの変更をすべて取り消します。
コミット
git commit -m "<コミットメッセージ>"
ステージングエリアの変更をコミットします。
git commit -a -m "<コミットメッセージ>"
ステージングエリアに追加されたすべての変更を含めてコミットします。
変更の取り消し
git checkout -- <ファイル名>
指定したファイルの変更を取り消します。
git reset --soft HEAD^
// windowsの場合
git reset --soft "HEAD^"
直前のコミットを取り消します。ステージングに変更履歴が残る。
git reset --mixed HEAD^
直前のコミットを取り消します。作業ディレクトリのみ変更履歴が残る。
git reset --hard HEAD^
直前のコミットを取り消します。作業ディレクトリからも変更履歴を削除。
git reset HEAD <ファイル名>(指定しない場合全ファイル)
ステージングエリアから指定したファイルを取り消します。
オプションを指定しないと「--mixed」が指定されるため、結果ステージングの変更を戻すことができる。
git reset --soft origin/現在作業中のブランチ名
リモートリポジトリにプッシュしていないローカルのすべてのコミットをステージングに戻します。
git commit --amend
直前のコミットに現在のステージングエリアの変更分を追加してコミットを上書き。
リモートリポジトリ
git remote add <リモート名> <リポジトリURL>
リモートリポジトリを追加します。
git remote -v
登録されたリモートリポジトリの一覧を表示します。
git push <リモート名> <ブランチ名>
ローカルのコミットをリモートリポジトリにプッシュします。
git pull <リモート名> <ブランチ名>
リモートリポジトリから最新の変更を取得してマージします。
リモートリポジトリの操作とマージ
git fetch <リモート名>
リモートリポジトリから最新の変更を取得します。
git merge <ブランチ名>
指定したブランチを現在のブランチにマージします。
git pull <リモート名> <ブランチ名>
リモートリポジトリから最新の変更を取得してマージします。
git pullだけでも問題ない。fecthしてmergeするのを1つにしたコマンド。
git push <リモート名> <ブランチ名>
ローカルのコミットをリモートリポジトリにプッシュします。
リモートリポジトリの管理
git remote add <リモート名> <リポジトリURL>
リモートリポジトリを追加します。
git remote -v
登録されたリモートリポジトリの一覧を表示します。
git remote rename <旧リモート名> <新リモート名>
リモートリポジトリの名前を変更します。
git remote remove <リモート名>
リモートリポジトリを削除します。
マージとリベース
スタッシュ
履歴の確認
git log
コミットログを表示します。
git log --oneline
コミットログを短い形式で表示します。
git diff
作業ツリーとステージングエリアの差分を表示します。
git diff --cached
ステージングエリアとリポジトリの最新コミットの差分を表示します。
git log --graph
コミットログをグラフ形式で表示します。
git blame <ファイル名>
コードの各行の編集履歴を表示します。
参考文献
・chatGPT
Discussion