リポジトリの初期化とクローン
git init
新しいGitリポジトリを作成します。
git init
git clone
既存のリポジトリをクローン(コピー)します。
git clone <repository_url>
ステータス確認と変更のステージング
git status
作業ディレクトリの状態を表示します。変更されたファイルや新しいファイル、ステージされていないファイルを確認できます。
git status
git add
変更をステージングエリアに追加します。
git add <file>
すべての変更を追加する場合
git add .
コミットとプッシュ
git commit
ステージングエリアに追加された変更をコミットします。
git commit -m "コミットメッセージ"
git push
ローカルリポジトリの変更をリモートリポジトリにプッシュ(送信)します。
git push <remote> <branch>
例:
git push origin main
フェッチとマージ
git pull
リモートリポジトリから変更をフェッチしてマージします。
git pull <remote> <branch>
例:
git pull origin main
git fetch
リモートリポジトリの変更をフェッチしてローカルリポジトリに反映しますが、作業ディレクトリにはマージしません。
git fetch <remote>
git merge
フェッチした変更やブランチを現在のブランチにマージします。
git merge <branch>
ブランチ操作
git branch
ブランチの一覧を表示します。
git branch
リモートブランチも表示する場合:
git branch -a
git checkout
指定したブランチに切り替えます。
git checkout <branch>
新しいブランチを作成して切り替える場合:
git checkout -b <new-branch>
git branch -d
マージ済みのブランチを削除します。
git branch -d <branch>
git branch -D
未マージのブランチを強制的に削除します。
git branch -D <branch>
リモート操作
git remote
リモートリポジトリの一覧を表示します。
git remote -v
git remote add
新しいリモートリポジトリを追加します。
git remote add <name> <url>
git remote remove
リモートリポジトリを削除します。
git remote remove <name>
その他の便利なコマンド
git log
コミット履歴を表示します。
git log
git diff
作業ディレクトリとステージングエリアの差分を表示します。
git diff
git stash
現在の作業内容を一時的に保存します。
git stash
git stash pop
一時的に保存した作業内容を復元します。
git stash pop
git rebase
ブランチの再ベースを行います。指定されたブランチの変更を現在のブランチに適用します。
git rebase <branch>
git rebase のイメージ
以下のようなコミット履歴があるとします。
A---B---C (featureブランチ)
/
D---E---F (mainブランチ)
git rebase main
を実行すると、featureブランチの変更がmainブランチの最新の変更の後に適用されます。
D---E---F (mainブランチ)
\
A'---B'---C' (featureブランチ)
これにより、featureブランチの履歴がmainブランチの最新の状態に基づいて更新されます。
リベース中にコンフリクトが発生した場合は、コンフリクトを解消し、以下のコマンドでリベースを再開できます。
git rebase --continue
リベースを中止する場合は、以下のコマンドを使用します。
git rebase --abort
git reset
コミットを取り消します。
git reset <commit>
作業ディレクトリの変更も取り消す場合:
git reset --hard <commit>
以上が現場でよく使うGitコマンドのまとめです!この一覧を活用して、Git操作をスムーズに行いましょう。