Gitを使いこなすことは、ソフトウェア開発やプロジェクト管理において非常に重要です。変更履歴の追跡や共同作業、安全なバックアップ、ブランチ運用など、さまざまな場面でGitコマンドを駆使することで作業効率が飛躍的に向上します。ここでは、基本から高度な操作までカバーする「Git コマンド 一覧」を整理し、実践的な使い方や注意点も含めて解説します。日常的に使えるコマンドをまとめておくことで、あなたのバージョン管理が一層スムーズになります。
目次
Git コマンド 一覧:基本操作・初期設定
まずはGitを使い始めるための基礎コマンドと環境設定についてまとめます。初めてリポジトリを作る時や新しいプロジェクトに参加する際に抑えておきたい項目です。
git –version / git version
Gitがインストールされているかどうか、またそのバージョンを確認するコマンドです。最新のGit機能や互換性のある拡張を使うには、最新版のGitを使っているかどうかをまず確認します。
git config
ユーザー名やメールアドレスなど、コミット履歴に必要な情報を設定します。グローバル設定やプロジェクト単位で設定を分けることができます。例えば、グローバルに設定して誰がいつコミットしたかを一貫性をもって管理できます。
git init / git clone
git initは現在のディレクトリを新しいGitリポジトリとして初期化します。新規プロジェクトを始めるときに使います。git cloneは既存のリモートリポジトリをコピーしてローカルに持ってくるためのコマンドで、プロジェクトを引き継ぐときに欠かせません。
Git コマンド 一覧:日常の操作フロー
コードを編集し、コミットし、リモートと同期するまでの一般的なワークフローで使うコマンドを重点的に解説します。日常的に使うからこそ正確に理解しておきたい内容です。
git status / git add
git statusは作業ディレクトリとステージングエリアの状態を表示します。どのファイルが変更されたか、追跡されていないかを把握できます。git addはその変更をステージングエリアに追加します。部分的に追加することも可能で、細かい制御が求められる場面で役立ちます。
git commit / git commit –amend
ステージされた変更を記録するのがgit commitです。メッセージを付けることで後から見返したときに内容が分かりやすくなります。–amendを使うと直前のコミットを修正できますが、公開済みのコミットを改変すると履歴が崩れる原因となるため注意が必要です。
git diff / git log
git diffは変更内容を比較表示するコマンドで、どの行が追加・削除されたかが見られます。一方git logはコミット履歴を順に表示し、誰がいつ何をしたかを追えるようにします。ログを整えるためのオプションも多く、履歴を分かりやすく保つことが可能です。
Git コマンド 一覧:ブランチとマージ/履歴操作
プロジェクトを複数の機能や修正で並行して進めるためのブランチ管理や、履歴を整理するマージ・リベースなどを行うコマンド群です。共同開発やリリース作業で重要度が高い操作です。
git branch / git switch / git checkout
git branchでブランチの一覧表示や作成・削除ができます。git switchはcheckoutの明確な代替として導入されており、ブランチ操作を分かりやすくします。checkoutは古くから使われており、ファイルの復元やブランチの切り替え、作成と切替を同時に行うオプションも備えています。
git merge / git rebase
git mergeは別のブランチの履歴を現在のブランチに統合します。変更点を自然に保ちたい場合に有効です。git rebaseは別のベースにコミットを再適用して履歴を直線的に保つ方法です。マージに比べて履歴が分かりにくくなる面もあるので、使う場面を選びます。
git cherry-pick / git revert / git reset
cherry-pickは特定のコミットだけを他のブランチに取り込むためのコマンドです。revertは履歴を保ったまま変更を打ち消すコミットを作成します。resetはコミット履歴を巻き戻したりステージングをやり直したりするのに使えますが、履歴が書き換わるため公開されたブランチでは慎重に使うことが求められます。
Git コマンド 一覧:リモート操作と共同作業
複数人での開発やリモートリポジトリを使う際に頻出するコマンドを整理します。安全にコードを共有し、アップデートするために理解しておきたい内容です。
git remote / git fetch
git remoteはローカルリポジトリがどのリモートと連携しているかを表示・設定するコマンドです。originなどの名前で管理します。git fetchはリモートの変更をローカルに持ってきますが、作業ツリーには影響を与えず、更新内容を確認してからマージやリベースを行いたいときに利用します。
git pull / git push
git pullはfetchとmergeを連続して行い、リモートの変更をローカルブランチに反映させる操作です。この操作での競合などを避けるには、pullする前にローカルの変更を整理しておくことが重要です。git pushはローカルでのコミットをリモートに送信し、他の開発者と共有します。プッシュ先のブランチや権限にも注意します。
git clone と branch の組み合わせ運用ルール
プロジェクト参加時にはgit cloneでローカルに複製し、ブランチを複数切って機能毎に作業を分けるのが一般的です。mainブランチは安定版、featureブランチで機能開発、hotfixブランチで緊急修正といった運用が多いです。コミットやマージ時のルールをチームで決めておくことで、トラブルを未然に防げます。
Git コマンド 一覧:トラブルシューティングと高度な使い方
誤ってコミットを消してしまったり競合が起きたりしたときの解決方法、また履歴を整理するためのテクニックなどを紹介します。プロとして必要な知識です。
git stash / git clean
git stashは現在の作業内容を一時退避させるコマンドです。ブランチを切り替えたり別作業を急にしなくてはならない時に非常に便利です。git cleanは追跡されていないファイルやビルド生成物を削除して作業ディレクトリを整理しますが、失われたファイルは復元できないこともあるので慎重に使います。
git reflog / git show
reflogはHEADの移動履歴を記録しており、過去に作業していたコミットを探し出して復活させるのに役立ちます。showは特定のコミットの内容(差分やメタデータ)を詳細に見たいときに使います。事故的にコミットを見失ったときの強力な救済手段です。
git bisect / git blame
bisectはバグがいつ組み込まれたかを二分探索の手法で特定するためのコマンドです。開発履歴が長いプロジェクトでバグの発生源を探すのに非常に有効です。blameはファイルの各行を誰がいつ書いたかを表示し、変更責任を追うのに使われます。コードレビューやトラブル発見の補助ツールです。
Git コマンド 一覧:便利なオプションと比較表
似たようなコマンドや目的が近いものの違いが分かりにくいものを比較し、それぞれの使いどころを明確にします。使い分けを理解することで誤操作や混乱を減らせます。
checkout と switch の違い
git checkoutはブランチの切り替えだけでなく、ファイルの復元やブランチの作成と切り替えを同時に行うなど多機能です。一方git switchはブランチの切替/作成に特化しており、意図しないファイルの復元を起こしにくい設計となっています。新しい運用ではswitchが推奨される場合も増えています。
merge と rebase の比較
mergeは複数のブランチを統合する際に履歴が分岐したまま保持され、どこで分かれたかが明瞭です。rebaseは歴史を直線的に保てるため見やすくなりますが、公開ブランチでの使用は履歴改変につながるため注意が必要です。チームの方針に沿って使い分けます。
reset の種類(–soft/–mixed/–hard)
resetコマンドにはモードがあり、–softはコミットだけを巻き戻しステージはそのまま保ちます。–mixedはステージをデフォルトに戻し、–hardは全ての変更を消去します。作業内容を失う可能性があるため、用途をよく理解した上で使う必要があります。
| コマンド | 主な用途 | 使用上の注意 |
|---|---|---|
| git merge | 異なるブランチの統合 | 競合処理が発生することがある |
| git rebase | 履歴を直線化して見通しを良くする | 公共の履歴で使うと履歴が書き換わる可能性あり |
| git reset –hard | 変更を完全に破棄する | 復元不可能なデータ消失に注意 |
まとめ
ここまで、初期設定から日常的な操作、ブランチ管理、履歴操作、リモート連携、トラブル対策まで含めた「Git コマンド 一覧」を網羅しました。これらのコマンドを状況に合わせて使い分けることで、バージョン管理がミスの少ないスムーズなものになります。
とくに、mergeとrebase、resetの各モード、stashやreflogなどの復旧系コマンドはプロジェクトを守るうえで非常に重要です。まずは基本操作の習得を優先し、さらに比較や高度な使い方を押さえておくと良いでしょう。
定期的に自身のワークフローに合わせてこの一覧を見直し、チームでのルールを作ることで開発の効率と品質がともに向上します。ぜひ手元に置いて活用してください。
コメント