最終更新日:2026年05月22日
プロジェクトフォルダを開くたびに「最終版_v3_修正2.js」「最終版_本当の最終版.js」などのファイルが増え続け、どれが正しいバージョンかわからなくなった経験はないでしょうか。
こうした問題を根本から解決するのが、エンジニアの必須ツール Git です。本記事では次の内容をステップ順に解説します。
- Gitとは何か・GitとGitHubの違い
- Windows・Macへのインストール手順と初期設定
- add / commit / push / pull など基本コマンドの使い方
- ブランチ操作とコンフリクト解消の方法
- GitHubとの連携・プルリクエストの基本
- 実務で差がつく .gitignore とコミットメッセージ規約
コマンドをまだ一行も入力したことがない方でも、この記事を読み終えた後には実際にGitリポジトリを作成できる状態を目指して解説しています。
Gitとは?バージョン管理システムを初心者向けに解説
Gitは、ファイルの変更履歴を記録・管理するための分散型バージョン管理システムです。2005年にLinuxカーネルの開発者リーナス・トーバルズによって開発され、現在では世界中のソフトウェア開発現場で事実上の標準ツールとして採用されています。
バージョン管理システムの役割とメリット
バージョン管理システム(VCS)を使うと、ファイルへの変更を時系列で記録し、いつでも任意の時点の状態に戻せるようになります。主なメリットは次のとおりです。
- 過去のどの時点にもファイルの状態を復元できる
- 誰がいつどのような変更を加えたか追跡できる
- 複数人が同じファイルを並行して安全に編集できる
- 新機能開発と本番環境の修正を分離して管理できる
Gitは各開発者のマシンにリポジトリの完全なコピーを保持する「分散型」であるため、ネットワーク接続がない環境でも履歴の確認やコミット操作を行える点が大きな特徴です。
GitとGitHubの違いを明確に理解する
Git初心者が最初に混乱しやすいのが「GitとGitHubの違い」です。一言でいえば、GitはツールでありGitHubはサービスです。以下の表で整理します。
| 項目 | Git | GitHub |
|---|---|---|
| 種別 | ソフトウェア(コマンドラインツール) | クラウドホスティングサービス |
| 動作場所 | ローカルマシン上 | インターネット上(クラウド) |
| 主な役割 | 変更履歴の記録・ブランチ管理 | リモートリポジトリの保管・チーム共有 |
| 料金 | 無料(オープンソース) | 無料プランあり/有料プランあり |
| 依存関係 | 単体で使用可能 | GitがなければGitHubは機能しない |
GitHubのほかにも GitLab・Bitbucket などの類似サービスが存在しますが、本記事では最も利用者が多いGitHubを例に解説します。仕様の詳細はGitHub公式ドキュメント(docs.github.com)で確認できます。
Gitのインストール方法【Windows・Mac対応】
Gitを使い始めるには、まず自分のPCにGitをインストールする必要があります。OSによって手順が異なるため、それぞれの方法を確認してください。インストールファイルはすべてGit公式サイト(git-scm.com)のダウンロードページから入手できます。
WindowsへのGitインストール手順
Windowsでは「Git for Windows」をインストールします。手順は次のとおりです。
- Git公式サイトのダウンロードページ(git-scm.com)からWindows版インストーラーを入手する
- ダウンロードした
.exeファイルを実行してインストーラーを起動する - 各設定画面は基本的にデフォルトのまま「Next」をクリックして進める
- 「Adjusting your PATH environment」では「Git from the command line and also from 3rd-party software」を選択する
- インストール完了後、スタートメニューから「Git Bash」を起動し、
git --versionを実行してバージョン番号が表示されれば完了
Git Bashは、Windows上でLinuxライクなコマンド操作ができるターミナルです。多くの学習教材がGit Bashを前提としているため、初心者にはGit Bashの使用を推奨します。
macOSへのGitインストール手順(Homebrew対応)
macOSにはGitが最初からインストールされている場合があります。まずターミナルで git --version を実行して確認してください。バージョン番号が表示されない場合は次のいずれかの方法でインストールします。
- Homebrewを使う場合(推奨):ターミナルで
brew install gitを実行する。より新しいバージョンを使いたい場合や、システム全体を統一管理したい方に最適です。 - Xcodeコマンドラインツール経由:
xcode-select --installを実行するとGitを含む開発ツール群が自動的にインストールされます。
インストール後は再度 git --version を実行し、バージョン番号が表示されることを確認してください。
インストール後の初期設定(git config)
Gitをインストールしたら、最初にユーザー名とメールアドレスを登録します。これは「誰がコミットしたか」をリポジトリに記録するための必須設定です。
git config --global user.name "Your Name"
git config --global user.email "your.email@example.com"
--global オプションを指定すると、PC全体で共通の設定として保存されます。設定内容を確認したい場合は git config --list を実行してください。git config の全オプションはGit公式ドキュメント「git-config」(git-scm.com)を参照してください。
Gitの基本コマンド使い方一覧【初心者が最初に覚える5選】
Gitには多数のコマンドがありますが、日常の開発で最もよく使うのは5つの操作に集約されます。まずこれだけを習得することで、実際の開発作業の大部分をこなせるようになります。
リポジトリを作成する(git init / git clone)
リポジトリとは、Gitが変更履歴を管理するための保管場所です。新規プロジェクトの場合は git init、既存のプロジェクトをコピーする場合は git clone を使います。
カレントディレクトリをGit管理下に置いて新しいリポジトリを作成する:
git init
GitHubなど既存のリモートリポジトリをローカルにコピーする:
git clone https://github.com/ユーザー名/リポジトリ名.git
クローン実行後は、リモートリポジトリのすべてのデータがローカルにダウンロードされ、すぐに作業を開始できる状態になります。
変更を記録する(git add / git commit)
ファイルを変更した後、その変更をGitの履歴として保存する操作が「コミット」です。コミットは2段階の手順で行います。
ステージング(git add):次のコミットに含めるファイルを「ステージングエリア」に追加します。
# 特定ファイルを追加する
git add ファイル名
# カレントディレクトリ以下の変更をすべて追加する
git add .
コミット(git commit):ステージングエリアの内容をリポジトリに記録します。-m オプションで変更内容の説明(コミットメッセージ)を指定します。
git commit -m "ログイン機能を追加"
コミット前に変更状況を確認したい場合は git status を実行します。操作に慣れるまでは何かするたびに git status を確認する習慣をつけることで、ミスを大幅に減らせます。
リモートと同期する(git push / git pull)
ローカルの変更をGitHubなどのリモートリポジトリに送信するのが git push、逆にリモートの最新変更をローカルに取り込むのが git pull です。
# ローカルの変更をリモートに送信する
git push origin main
# リモートの最新変更をローカルに取得して統合する
git pull origin main
origin はリモートリポジトリのデフォルト名、main は対象のブランチ名です。全コマンドのリファレンスはGit公式ドキュメント(git-scm.com)で確認できます。
ここまでのコマンドを実際に手元で試してみましょう。コマンド例つきで基本操作を学べる公式入門テキスト「gittutorial(git-scm.com)」も合わせて活用してください。
ブランチの使い方【なぜ必要か・作成・マージまで】
Gitの最大の強みのひとつが「ブランチ」機能です。ブランチを正しく使うことで、本番環境を壊さずに安全な開発フローを実現できます。
ブランチが必要な理由とイメージ
ブランチとは、開発の流れを分岐させて並行管理するための仕組みです。「本番環境で動いているコードを壊さずに、新機能の開発だけ進めたい」というケースを考えてみましょう。
ブランチを使わない場合、開発中の未完成コードが本番コードに混入するリスクがあります。ブランチを使えば本番用のコードには一切触れずに専用の作業スペースで開発を進め、完成したら本番ブランチに「マージ」(統合)するだけです。
Gitのブランチはコストがほぼゼロで作成・切り替えができるため、小さな修正でもブランチを切ることが現場での一般的な作法とされています。
ブランチの作成・切り替え・削除コマンド
ブランチ操作の主なコマンドをまとめます。
# 新しいブランチを作成して同時に切り替える
git switch -c feature/new-login
# 既存ブランチに切り替える
git switch main
# ブランチ一覧を表示する(現在のブランチには * が付く)
git branch
# マージ済みのローカルブランチを削除する
git branch -d feature/new-login
なお git checkout でも同様の操作ができますが、Git 2.23以降では用途が明確な git switch が推奨されています。 ブランチ名には feature/機能名 や fix/バグ名 のようなスラッシュを使った命名が広く使われており、変更の目的が一目で伝わる利点があります。
マージとコンフリクト(競合)の解消方法
作業が完了したブランチをメインブランチに統合するのが「マージ」です。
# mainブランチに切り替えてからマージを実行する
git switch main
git merge feature/new-login
マージ時に同じファイルの同じ箇所を別ブランチで同時に変更していた場合、コンフリクト(競合)が発生します。コンフリクトが起きると、該当ファイルに次のようなマーカーが挿入されます。
<<<<<<< HEAD
現在のブランチの内容
=======
マージ元ブランチの内容
>>>>>>> feature/new-login
コンフリクトの解消手順は次のとおりです。
- マーカー(
<<<<<<<・=======・>>>>>>>)が含まれるファイルをエディタで開く - 残すべき内容を決定し、マーカー行を含む不要な部分を手動で削除する
git add ファイル名でステージングし、git commitでマージコミットを記録する
VS Codeなどのエディタにはコンフリクト箇所をハイライト表示してクリックで解消できる機能が備わっているため、初心者でも視覚的に対処しやすくなっています。
GitHubとの連携方法【リモートリポジトリ設定からプルリクエストまで】
Gitはローカルだけでも使えますが、GitHubと連携することでチームでの共同開発やコードのバックアップが可能になります。ここではアカウント作成から実際のコード共有までの流れを解説します。
GitHubアカウント作成とリモートリポジトリの設定
まずGitHub(github.com)でアカウントを作成します。無料プランでもパブリック・プライベートリポジトリを作成できます。
GitHubでリモートリポジトリを新規作成したら、ローカルリポジトリと紐付けます。
# リモートリポジトリをローカルに登録する
git remote add origin https://github.com/ユーザー名/リポジトリ名.git
# デフォルトブランチを main に設定して初回プッシュ
git branch -M main
git push -u origin main
-u オプションを付けると追跡設定が保存され、以降は git push だけで同じリモートブランチへ送信できます。詳細な手順はGitHub公式ドキュメント(docs.github.com)を参照してください。
プルリクエスト(PR)の基本的な流れ
チーム開発では、作業ブランチの変更をメインブランチに反映する前に「プルリクエスト(PR)」を作成してコードレビューを受けるのが標準的な手順です。
- 作業ブランチでコミットを行い、
git push origin feature/ブランチ名でGitHubに送信する - GitHubのリポジトリページに表示される「Compare & pull request」ボタンをクリックする
- PRのタイトルと変更内容の説明を記入し、「Create pull request」を作成する
- レビュアーが承認したら「Merge pull request」でメインブランチに統合する
GitHubアカウントをまだお持ちでない方は、GitHub公式サイトから無料登録(github.com/signup)できます。
実践で差がつくGitの使い方【.gitignoreとコミットメッセージ規約】
基本コマンドを習得した後に多くの初心者が直面するのが、「意図しないファイルがコミットに含まれた」「コミット履歴を後から見ても変更の意図がわからない」という問題です。この2点を意識するだけで、実務レベルのGit運用に大きく近づけます。
.gitignoreで不要ファイルを管理対象外にする方法
.gitignore は、Gitの管理対象から特定のファイルやフォルダを除外するための設定ファイルです。node_modules(依存パッケージ)・環境変数ファイル(.env)・OSが自動生成する .DS_Store などを意図せずコミットすると、リポジトリが肥大化したり秘密情報が漏洩したりするリスクがあります。
プロジェクトルートに .gitignore ファイルを作成し、無視したいパターンを記述します。
# OSが生成するファイル
.DS_Store
Thumbs.db
# 依存パッケージ
node_modules/
# 環境変数ファイル
.env
.env.local
言語・フレームワーク別のテンプレートはGitHub公式 .gitignore テンプレートコレクション(github.com/github/gitignore)で公開されており、プロジェクト開始時にそのまま活用できます。
伝わるコミットメッセージの書き方と実例
コミットメッセージは「何のために変更したか」を後から自分やチームが把握するための記録です。曖昧なメッセージはバグ調査やコードレビュー時の大きな障壁になります。
良いコミットメッセージの3原則:
- 「何をしたか」より「なぜしたか」を書く:「ログイン処理を修正」よりも「セッション切れ時のリダイレクト先が誤っていたため修正」のほうが意図が明確に伝わります
- 1コミット1目的にする:複数の変更を1つのコミットにまとめると後から変更を追跡しにくくなります
- 動詞で始める:「Add」「Fix」「Update」「Remove」などで書き始めると変更の種別が一目でわかります
悪い例と良い例の比較:
# 悪い例
git commit -m "修正"
git commit -m "いろいろ変更"
# 良い例
git commit -m "Fix: ログアウト後にセッションが残る問題を解消"
git commit -m "Add: 商品詳細ページのレスポンシブ対応を追加"
よくある質問
GitとSVNの違いは何ですか?
SVN(Subversion)は中央集中型のバージョン管理システムで、変更履歴は単一のサーバーに集約されます。Gitは分散型で各開発者がリポジトリの完全なコピーをローカルに持つため、オフラインでも作業できブランチ操作も高速です。現在の開発現場ではGitが主流となっています。
GitHubのほかにGitLab・Bitbucketとの違いは?
GitLabはオープンソース版を自社サーバーに導入できる「セルフホスト」が強みで、企業内の閉じた環境での利用に向いています。BitbucketはAtlassian製品(JiraやTrello)との連携が充実しています。個人利用・オープンソースプロジェクトではGitHubが最も広く使われています。
コマンドが難しい場合、GUIクライアントは使えますか?
はい、問題ありません。「GitHub Desktop」(無料)や「Sourcetree」(無料)などのGUIクライアントを使えばクリック操作でコミット・ブランチ管理・マージが行えます。ただしコマンドラインの基礎を理解しておくとエラー発生時の原因特定が容易になるため、並行して学習することをお勧めします。
Gitを学ぶのにおすすめの方法・サービスはありますか?
コマンドに不慣れな方にはブラウザ上で対話形式に学べる「Progate」が初心者に人気です。コマンドラインで実践的に学びたい方にはGit公式のgittutorialが無償で利用できます。本記事の基本コマンドを一通り試した後、GitHubでパブリックリポジトリを実際に作成・公開するのが、効率的な学習方法として特に推奨されています。
Gitコマンド詳細・GitHub活用・チーム開発ワークフローについてさらに詳しく学びたい方は、関連コンテンツもあわせてご参照ください。
まとめ:今日からGitを使い始めよう
本記事では、Gitの基本概念からインストール・初期設定・基本コマンド・ブランチ操作・GitHub連携・実務テクニックまでを一通り解説しました。
まずは git init でリポジトリを作成し、git add → git commit の流れを手元で実践してみてください。小さな実践の積み重ねが、チーム開発でも通用するGitスキルの土台になります。次のステップとして、ブランチを活用した開発フローやGitHubでのプルリクエスト運用にもぜひ挑戦してみましょう。
