| 基本 |
git init |
カレントディレクトリにGitリポジトリを新規作成。.gitフォルダが生成され、バージョン管理が開始される。 |
開始 |
|
| 基本 |
git clone <url> |
リモートリポジトリをローカルに複製。履歴も含めて完全にコピーされる。 |
開始 |
|
| 基本 |
git status |
作業ディレクトリの状態を確認。変更されたファイル、ステージング済みファイル、未追跡ファイルを一覧表示。 |
確認 |
|
| 基本 |
git add . |
カレントディレクトリ以下の全ての変更ファイルをステージングエリアに追加。コミット準備が完了する。 |
保存 |
|
| 基本 |
git add <file> |
指定したファイルのみをステージングエリアに追加。部分的なコミットをしたい場合に使用。 |
保存 |
|
| 基本 |
git commit -m "" |
ステージング済みの変更を履歴に記録。-mオプションでコミットメッセージを直接指定。 |
保存 |
|
| 基本 |
git push origin main |
ローカルのコミットをリモートリポジトリに送信。チームメンバーと変更を共有する。 |
同期 |
|
| 基本 |
git pull origin main |
リモートの変更をローカルに取得してマージ。fetch + merge を一度に実行。 |
同期 |
|
| 基本 |
git fetch |
リモートの最新情報を取得するが、ローカルにはマージしない。状況確認に安全。 |
同期 |
|
| ブランチ |
git branch |
ローカルブランチの一覧を表示。現在のブランチには*が付く。 |
確認 |
|
| ブランチ |
git branch -a |
ローカルとリモートの全ブランチを表示。リモートブランチは remotes/origin/xxx の形式。 |
確認 |
|
| ブランチ |
git branch <n> |
指定した名前で新しいブランチを作成。作成のみで切り替えは行わない。 |
作成 |
|
| ブランチ |
git checkout <branch> |
指定したブランチに切り替え。作業ディレクトリの内容がそのブランチの状態になる。 |
切替 |
|
| ブランチ |
git checkout -b <n> |
新しいブランチを作成して、そのブランチに切り替え。branch + checkout を一度に実行。 |
作成 |
|
| ブランチ |
git switch <branch> |
ブランチを切り替える新しいコマンド。checkoutより意図が明確で推奨。 |
切替 |
|
| ブランチ |
git switch -c <n> |
新しいブランチを作成して切り替え。-c は create の略。 |
作成 |
|
| ブランチ |
git merge <branch> |
指定したブランチの変更を現在のブランチに統合。コンフリクトが発生する場合あり。 |
統合 |
|
| ブランチ |
git rebase <branch> |
現在のブランチの変更を指定ブランチの先頭に移動。履歴が直線的になるが、注意が必要。 |
統合 |
|
| ブランチ |
git branch -d <n> |
マージ済みのブランチを削除。未マージの場合はエラーになり安全。 |
削除 |
|
| ブランチ |
git branch -D <n> |
ブランチを強制削除。未マージでも削除される。注意して使用。 |
削除 |
|
| ブランチ |
git push origin <branch> |
指定したブランチをリモートにプッシュ。初回は -u オプションで追跡設定推奨。 |
同期 |
|
| ブランチ |
git push origin --delete <branch> |
リモートリポジトリ上のブランチを削除。ローカルブランチは残る。 |
削除 |
|
| 履歴 |
git log |
コミット履歴を新しい順に表示。コミットID、作者、日時、メッセージが確認できる。 |
確認 |
|
| 履歴 |
git log --oneline |
コミット履歴を1行ずつ簡潔に表示。コミットIDの先頭7文字とメッセージのみ。 |
確認 |
|
| 履歴 |
git log --graph |
ブランチの分岐・マージを視覚的にグラフ表示。複雑な履歴の把握に便利。 |
確認 |
|
| 履歴 |
git log -n <num> |
指定した件数のコミットのみ表示。最新5件だけ見たい場合などに使用。 |
確認 |
|
| 履歴 |
git log -p |
各コミットの変更内容(diff)も一緒に表示。どの行が変更されたか確認できる。 |
確認 |
|
| 履歴 |
git diff |
作業ディレクトリとステージングエリアの差分を表示。未ステージの変更を確認。 |
確認 |
|
| 履歴 |
git diff --staged |
ステージング済みの変更と最新コミットの差分を表示。次のコミット内容を確認。 |
確認 |
|
| 履歴 |
git diff <file> |
指定したファイルの差分のみを表示。特定ファイルの変更を確認したい場合。 |
確認 |
|
| 履歴 |
git diff <commit1> <commit2> |
2つのコミット間の差分を表示。どのコミットで何が変わったかを比較。 |
確認 |
|
| 履歴 |
git show <commit> |
指定したコミットの詳細情報と変更内容を表示。コミットの中身を確認。 |
確認 |
|
| 履歴 |
git blame <file> |
ファイルの各行が誰によっていつ変更されたかを表示。バグの原因調査に便利。 |
確認 |
|
| トラブル |
git reset HEAD <file> |
ステージングエリアから指定ファイルを取り消し。add を間違えた場合のやり直し。 |
取消 |
|
| トラブル |
git reset HEAD~1 |
直前のコミットを取り消し、変更はワーキングディレクトリに残す。コミットのやり直しに。 |
取消 |
|
| トラブル |
git reset --hard HEAD~1 |
直前のコミットと変更を完全に削除。元に戻せないので要注意。 |
取消 |
|
| トラブル |
git reset --hard origin/main |
ローカルをリモートの状態に強制的に合わせる。ローカルの変更は全て失われる。 |
復旧 |
|
| トラブル |
git revert <commit> |
指定コミットの変更を打ち消す新しいコミットを作成。履歴を残したまま取り消し。 |
取消 |
|
| トラブル |
git stash |
作業中の変更を一時的に退避。ブランチ切り替え前にコミットしたくない場合に便利。 |
退避 |
|
| トラブル |
git stash list |
退避した変更の一覧を表示。stash@{0}, stash@{1}... の形式で表示。 |
確認 |
|
| トラブル |
git stash pop |
最新の退避を復元し、スタッシュから削除。作業を再開する際に使用。 |
復旧 |
|
| トラブル |
git stash drop |
最新の退避を削除。不要になったスタッシュを整理する際に使用。 |
削除 |
|
| トラブル |
git checkout -- <file> |
作業ディレクトリの変更を破棄し、最新コミットの状態に戻す。変更は失われる。 |
復旧 |
|
| トラブル |
git restore <file> |
ファイルを最新コミットの状態に戻す新しいコマンド。checkout より意図が明確。 |
復旧 |
|
| トラブル |
git clean -fd |
未追跡のファイルとディレクトリを削除。-f は強制、-d はディレクトリも対象。 |
削除 |
|
| トラブル |
git reflog |
HEADの移動履歴を表示。reset で消したコミットの復旧などに使用。 |
復旧 |
|
| トラブル |
git cherry-pick <commit> |
指定したコミットの変更のみを現在のブランチに適用。特定の変更だけ取り込みたい場合。 |
復旧 |
|
| 設定 |
git config --global user.name "" |
コミット時に記録されるユーザー名を設定。--global で全リポジトリ共通。 |
開始 |
|
| 設定 |
git config --global user.email "" |
コミット時に記録されるメールアドレスを設定。GitHubアカウントと同じが推奨。 |
開始 |
|
| 設定 |
git config --list |
現在の設定値を一覧表示。user.name, user.email, remote.origin.url などを確認。 |
確認 |
|
| 設定 |
git remote add origin <url> |
リモートリポジトリを「origin」という名前で登録。git init 後に実行。 |
開始 |
|
| 設定 |
git remote -v |
登録されているリモートリポジトリのURLを表示。fetch用とpush用が表示される。 |
確認 |
|
| 設定 |
git remote set-url origin <url> |
リモートリポジトリのURLを変更。リポジトリ移行時などに使用。 |
変更 |
|
| 設定 |
git remote remove origin |
リモートリポジトリの登録を解除。別のリモートに切り替える際に使用。 |
削除 |
|