
こんにちは!開発者として10年以上の経験を持つ私ですが、キャリアをスタートした頃は、ターミナルの「黒い画面」と専門用語に何度も挫折しかけました。しかし、その仕組みを一度理解してしまえば、開発効率が劇的に向上し、チームでの共同作業が何倍も楽しくなることを保証します。
「ソースコードの管理って、どうすればいいの?」
「”黒い画面”の操作は、なんだか怖くて手が出せない…」
この記事では、かつての私と同じように悩むあなたが、最短でGitと”友達”になり、自信を持ってバージョン管理の第一歩を踏み出せるよう、私の経験の全てを注ぎ込みました。
この記事を最後まで読めば、あなたはmacOSでGitを使いこなし、自在にコードの時間を巻き戻したり、新しい機能の実験を安全に行ったりできるようになります。さあ、一緒にバージョン管理の世界へ飛び込みましょう!
本記事の対象読者
- Gitについて全く知らない初心者
- macOS Sequoiaを使用しているが、まだGitをインストールしていない人
- バージョン管理の必要性を理解しており、実践的な導入手順を求める人
- プログラミングや開発を始めようとしている人
もくじ
- GitとGitHubの違いとは?
- なぜGitを使うのか
- Git導入手順
- ローカル動作確認:Gitを使ってみよう!
- Gitコマンドリファレンス
- 導入に当たっての注意点
- エディターとの連携
- GUIツールとの連携
- 参考情報
- よくある質問(FAQ)
- まとめ:次のステップへ
GitとGitHubの違いとは?
Gitの学習を始める前に、多くの初心者が混同しがちな「Git」と「GitHub」の違いを明確にしておきましょう。
- Git: 「バージョン管理システム」というソフトウェアそのものです。あなたのPC(ローカル環境)にインストールして、ファイルの変更履歴を記録・管理する役割を担います。タイムマシンのようなものだと考えてください。
- GitHub: Gitで作った変更履歴を、インターネット上で保存・共有するためのウェブサービスです。Gitがタイムマシンなら、GitHubはタイムマシンのセーブデータを保管し、他の人にも共有できるクラウドストレージのような存在です。
この記事では、まずあなたのPCだけで完結する「Git」の基本的な使い方に焦点を当てます。
Githubについては、以下の記事で詳細に解説していますので、是非ご覧ください。
なぜGitを使うのか
Gitがなぜこれほど多くの開発者に使われているのでしょうか?
一言で言えば、「コードの変更に関するあらゆる不安」から開発者を解放してくれるからです。
Gitを「ゲームのセーブ機能」に例えてみましょう。
- コミット (
commit
): ゲームの進行状況を保存する「セーブポイント」です。いつでもこの状態に戻れます。 - ブランチ (
branch
): 今のストーリーとは別に、別のシナリオを試すための「パラレルワールド」を作るようなものです。 - マージ (
merge
): パラレルワールドでの冒険が上手くいったので、本編のストーリーに統合することです。
このように、Gitを使うことで以下のようなメリットが生まれます。
- ドキュメント管理
テキスト(Markdown など)をバージョン管理することで、誰が何をしたかが明確になります。
発生する問題 | 解決方法 |
---|---|
変更履歴の追跡ができず、誰が何をしたか分からない | 変更内容を記録する仕組み(例:ファイルのバージョン管理)を使い、履歴から誰がどんな変更を行ったかを確認します。 |
複数のバージョンを同時に編集して競合が発生する | 作業を分けて進め、後でそれらを統合することで衝突を解消しやすくします。 |
- 変更履歴の追跡
バージョンを戻す操作が簡単で、過去の安定版へ復帰できます。
発生する問題 | 解決方法 |
---|---|
バグを発見した際に以前の安定版へ戻せない | 以前の状態を再現する手段(例:過去のバージョンに戻す操作)を利用し、安定した状態へ復帰します。 |
コード編集中に失敗して作業が進められない | 直前の状態に戻る手段(例:作業を元に戻す操作)を使い、再度作業を開始します。 |
- 実験的な変更の安全な試行
別の作業ラインを切り離して実験することで、メインラインへの影響を最小化できます。
発生する問題 | 解決方法 |
---|---|
新機能を試した結果、メインラインが破損する恐れ | 実験用の作業領域を別に設け、問題がなければメインラインへ統合します。 |
実験が失敗しても作業に影響を与えたくない | 実験前の状態へ戻す手段(例:作業を元に戻す操作)や、一時的に変更内容を退避させる手段(例:作業内容を一時保管)を利用します。 |
Git導入手順
それでは、早速あなたのmacOSにGitを導入しましょう。最も簡単で一般的な方法はHomebrew(パッケージ管理システム)を使用する方法です。
前提条件
- macOS Sequoiaがインストールされていること。
- ターミナル(Terminal)アプリを起動できること。
手順1:Xcode Command Line Toolsのインストール(未導入時)
HomebrewやGitの動作に必要となる開発者向けツールをインストールします。
# 開発に必要なコマンドラインツールをインストール
xcode-select --install
ダイアログが表示されたら「インストール」をクリックし、完了まで待ちます。すでにインストール済みの場合は、その旨のメッセージが表示されます。
Memo
- macOS Sequoiaでは、Xcode Command Line Toolsに標準でGitが含まれています(バージョンは少し古い場合があります)。
- 公式ドキュメント:https://developer.apple.com/documentation/xcode/command_line_tools
手順2:Homebrewのインストール(未導入時)
Homebrewは、macOS用のパッケージ管理システムで、さまざまなソフトウェアをコマンド一つで簡単にインストールできます。
# Homebrewをインストールするための公式コマンド
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
Xcode Command Line Tools、Homebrewのインストールについては、以下の記事で詳細に解説していますので、是非ご覧ください。
手順3:Gitのインストール
Homebrewを使って最新版のGitをインストールします。
# Homebrewを使ってGitをインストール
brew install git
インストールが完了したら、Gitのバージョンを確認しましょう。
# インストールされたGitのバージョンを確認
git --version
出力例:git version 2.51.0
(Homebrewでインストールした最新版のバージョンが表示されます)
手順4:Gitの初期設定
Gitで変更履歴を保存(コミット)する際に、誰が変更したかを記録するためにユーザー名とメールアドレスを設定します。これは各コミットに刻まれる「作者情報」として非常に重要です。
以下のコマンドでグローバル設定(このPC上のすべてのGitリポジトリに適用される設定)を行います。
# あなたの名前を設定します(GitHubなどで表示される名前)
git config --global user.name "Your Name"
# あなたのメールアドレスを設定します
git config --global user.email "your.email@example.com"
設定が正しく行われたか確認するには、次のコマンドを実行してください。
# 設定されたユーザー名とメールアドレスを表示して確認
git config --global user.name
git config --global user.email
それぞれのコマンドが設定した名前とメールアドレスを返せば、初期設定は正常に完了です。
ローカル動作確認:Gitを使ってみよう!
インストールが完了したところで、いよいよGitの基本的な操作を体験してみましょう。
ここで行う一連の作業は、実際の開発現場でも毎日繰り返される基本動作です。ステップバイステップで進めることで、着実に操作が身につきます。
- 手順1:リポジトリの作成:プロジェクトの保管場所を用意する。
- 手順2:ファイルの追加とステージング:変更内容を記録の準備リストに追加する。
- 手順3:コミットの実行:準備リストにある変更を、メッセージを付けて記録する。
- 手順4:ファイルの編集と再コミット:変更を加えて、再度記録する。
- 手順5:コミットの取り消し:間違った記録を取り消す。
- 手順6:履歴の確認:これまでの記録を一覧で見る。
- 手順7:ブランチ操作:作業を分岐させて、安全に新しい変更を加える。
手順1:ローカルリポジトリの作成
まず、プロジェクト用の新しいフォルダを作成し、その中でGitの管理を開始します。
# 新しいディレクトリを作成して、そこに移動する
mkdir my-first-git-repo
cd my-first-git-repo
# このディレクトリをGitリポジトリとして初期化する
git init
実行後、my-first-git-repo
フォルダ内に.git
という隠しフォルダが作成されます。このフォルダにGitがバージョン管理するための全ての情報が保存されます。
手順2:ファイルの作成とステージング
次に、新しいファイルを作成し、Gitの管理対象にします。この操作を理解するために、Gitの3つのエリアについて知っておきましょう。

- ワーキングディレクトリ: あなたが今作業している、PC上の普通のフォルダです。
- ステージングエリア: コミット(セーブ)したい変更内容を、一時的に置いておく準備場所です。
- ローカルリポジトリ: ステージングエリアにある変更内容を、実際に記録・保管する場所です。
この「コミットの準備をする」操作をステージングと呼びます。
# 'README.md'という名前の新しいファイルを作成
echo "# My First Git Repository" > README.md
# Gitに現在のフォルダの状態を尋ねる
git status
git status
を実行すると、README.md
が「Untracked files」(追跡されていないファイル)として赤色で表示されます。
このファイルをGitで管理するには、git add
コマンドを使ってステージングエリアに追加します。
# README.mdをステージングエリアに追加する
git add README.md
再度git status
を実行すると、「Changes to be committed」(コミットされる予定の変更)として緑色で表示が変わります。
手順3:コミットの実行
ステージングされた変更を、メッセージを付けてリポジトリに永続的に保存します。この操作がコミットです。
# ステージングされた変更をメッセージ付きでコミット(記録)する
git commit -m "最初のコミット:README.mdを追加"
コミットが成功すると、以下のような出力が表示され、変更が記録されたことが分かります。
[main (root-commit) 1a2b3c4] 最初のコミット:README.mdを追加
1 file changed, 1 insertion(+)
create mode 100644 README.md
手順4:ファイルの変更と再コミット
作成したファイルを修正し、その変更を再度コミットしてみましょう。
# README.mdに説明文を一行追加
echo "This is my first Git repository." >> README.md
# 変更内容を確認
git status
git status
で「modified」(変更された)と表示されるので、先ほどと同じようにステージングとコミットを行います。
# 変更されたREADME.mdをステージング
git add README.md
# 新しいコミットを作成
git commit -m "README.mdに説明文を追記"
手順5:コミットの取り消し
時には、間違ってコミットしてしまうこともあります。その際にコミットを取り消す方法を学びます。
方法 | コマンド |
---|---|
直前のコミットをやり直す | git reset --soft HEAD~1 (ステージは残る) |
直前のコミットを完全に消す | git reset --hard HEAD~1 |
コミットを打ち消す新しいコミットを作る | git revert HEAD (安全な取り消し方法) |
【超重要】git reset --hard
の取り扱い注意
git reset --hard
は、コミットだけでなく、ステージングエリアや作業ディレクトリの変更も完全に消去します。一度実行すると絶対に元に戻せません。
まだ誰とも共有していない、自分だけのローカルリポジトリで「今の変更、全部なかったことにしたい!」という場合にのみ使用してください。
チームで共有しているリモートリポジトリにpushしたコミットに対しては、絶対に使用しないでください。 履歴が食い違い、チームに大きな混乱を招きます。共有したコミットを取り消したい場合は、git revert
を使うのが安全な方法です。
#【危険!】直前のコミットと、それに関連する全ての変更を完全に削除する
git reset --hard HEAD~1
手順6:コミット履歴の確認
過去のコミットを確認するにはgit log
コマンドを使用します。--oneline
オプションを付けると、1行で簡潔に表示されて便利です。
# コミット履歴を1行で簡潔に表示する
git log --oneline
出力例:
d4e5f67 (HEAD -> main) README.mdに説明文を追記
1a2b3c4 最初のコミット:README.mdを追加
手順7:ブランチ操作
Gitの最も強力な機能の一つが「ブランチ」です。現在の作業(mainブランチ)に影響を与えることなく、新しい機能開発やバグ修正を試すための「分岐した作業ライン」を作成できます。

ここではブランチを作成し、変更をコミットしてメインにマージする一連の操作を説明します。
# 'feature-readme2'という名前の新しいブランチを作成し、そのブランチに切り替える
git checkout -b feature-readme2
# 新しいファイルを作成し、コミットする
echo "This is my first Git branch." >> README2.md
git add README2.md
git commit -m "featureブランチでREADME2.mdを追加"
# mainブランチに戻る
git checkout main
# feature-readme2ブランチの変更をmainブランチに取り込む(マージ)
git merge feature-readme2
# マージが完了したので、不要になったブランチは削除できる
git branch -d feature-readme2
Gitコマンドリファレンス
日常的な開発フローで頻繁に使われる主要なGitコマンドとその用途をまとめました。
用途 | Git コマンド例 |
---|---|
新規プロジェクト作成 | git init |
ファイルをステージに追加 | git add <file> |
コミット(初期コミット) | git commit -m "初期コミット" |
リモートにプッシュ | git push origin main |
ローカルブランチ作成&切替 | git checkout -b feature-x |
マージ(featureブランチをmainへ統合) | git merge feature-x |
コミットを戻す(やり直し) | git reset --soft HEAD~1 |
コミットを破棄 | git reset --hard HEAD~1 |
リモートブランチを追跡 | git branch --set-upstream-to=origin/main main |
タグ作成(リリースバージョン) | git tag v1.0.0 |
スタッシュ保存(作業内容を一時退避) | git stash |
スタッシュ適用(最新の退避内容を戻す) | git stash pop |
スタッシュ削除(特定の退避内容を消す) | git stash drop <stash@{n}> |
導入に当たっての注意点
Gitを初めて使用する際には、以下のポイントに注意しましょう。
- コミットメッセージの明確化:コミットメッセージは「どのような変更をしたか」がわかるように記述します(例:
Fix login bug
の方がUpdate code
より良い)。 - .gitignoreファイルの作成:Gitで管理しないファイル(例:
node_modules/
、.env
)を指定します。作成方法はGitHubのガイドを参照してください。 - 定期的なプルとプッシュ:リモートリポジトリとの差分を常に確認し、競合を防ぎます。
- ブランチ名の適切な命名:機能ごとに分ける(例:
feature/login
、bugfix/payment
)ことで整理しやすくなります。
エディターとの連携
Gitは主にコマンドラインで操作されますが、多くのテキストエディターやIDEでGitと連携する機能があります。
よく使われる組み合わせと設定例は以下の通りです。
1. Visual Studio Code(VS Code)
- Gitリポジトリの表示:左下の「ソース管理」アイコンから変更履歴を確認できる。
- 統合ターミナル:コマンドライン操作を直接実行できる。
- 拡張機能:「GitLens」などでさらに詳細なコミット情報を表示。
2. Atom
- Gitパネル:サイドバーに変更されたファイルの一覧が表示される。
- パッケージ:
git-plus
などで簡単にコミットやプッシュができる。
3. Sublime Text
- Git Sidebar Enhancements:サイドバーからGit操作を実行できる拡張機能。
エディタ | 設定例 |
---|---|
VS Code | git config --global core.editor "code --wait" GitLens 拡張でブランチ・コミット履歴が表示 |
Atom | atom-settings-view で git-path 設定可能 |
Sublime Text | Preferences → Package Settings → Git → Settings – User に "git_path": "/opt/homebrew/bin/git" を追加 |
GUIツールとの連携
コマンドライン(黒い画面)での操作が苦手な方でも、直感的にGitを操作できるGUI(グラフィカル・ユーザー・インターフェース)ツールがあります。コマンドと併用することも可能です。
ツール | 主な特徴 |
---|---|
GitHub Desktop | GitHubが公式に提供。シンプルな操作性が魅力で、Pull Requestの管理も簡単。 |
SourceTree | Atlassian社(JiraやBitbucketで有名)が提供。高機能で、複雑なブランチも可視化できる。無料。 |
GitKraken | 美しいUIと強力な可視化機能が特徴。チームでの利用を想定した機能も豊富(一部有料)。 |
結論:まずはこの記事でコマンドラインの基本を学び、必要に応じてGUIツールを試してみるのがおすすめです。基本的な概念はどちらも同じです。
参考情報
以下のリソースを活用して、Gitについてさらに深く学ぶことができます。
タイトル | URL |
---|---|
Git 公式ドキュメント(Pro Git Book) | https://git-scm.com/book/en/v2 |
Homebrew Formulae 公式ページ(git) | https://formulae.brew.sh/formula/git |
Git リポジトリ(公式) | https://github.com/git/git |
よくある質問(FAQ)
Q: Homebrewを使わずにGitをインストールできますか?
A: はい、可能です。macOSには標準でGitが付属していることが多いです。また、公式サイトからインストーラーをダウンロードする方法もあります。しかし、Homebrewを使うとバージョン管理が容易になるため、多くの開発者にとって推奨される方法です。
Q: コミットメッセージは日本語でも良いですか?
A: 技術的には問題ありません。しかし、将来的に海外のエンジニアと共同作業する可能性を考えると、コミットメッセージは英語で書く習慣をつけておくことを強く推奨します。"Fix: login button bug"
のように、簡潔な英語で書く練習を始めましょう。
Q: git pull
とgit fetch
の違いは何ですか?
A: どちらもリモートリポジトリから最新情報を取得するコマンドですが、git fetch
は単に情報を取得するだけで、あなたのローカルブランチには影響を与えません。一方、git pull
は情報を取得した上で、現在のブランチに自動的にマージ(統合)します。初心者のうちは、まずfetch
して差分を確認してからmerge
する方が安全です。
まとめ:次のステップへ
お疲れ様でした!この記事を通じて、あなたは以下のスキルを身につけました。
- macOSにHomebrewを使ってGitをインストールし、初期設定を行う方法
- リポジトリの作成、ステージング、コミットというGitの基本的なサイクル
- 安全に新しい挑戦をするためのブランチ操作
- 過去の履歴を確認し、時には変更を取り消す方法
これであなたもGit使いの仲間入りです。しかし、これはまだ冒険の序章に過ぎません。
【次のステップ】
ローカルでの操作に慣れたら、次は世界中の開発者と繋がるための第一歩、GitHubに挑戦してみましょう!あなたの書いたコードを世界に公開し、フィードバックをもらうことができます。
→ 関連記事
本記事をご利用いただくにあたって
この記事は、公開時点(2025年9月)の情報に基づき、正確な情報を提供するよう努めています。
しかし、本記事で解説するソフトウェアやサービスの仕様は日々更新されるため、記事内で紹介している画面や手順が、ご覧いただいている時点では変更されている可能性があります。
もし内容に相違がある場合は、各サービスの最新の公式ドキュメントも併せてご参照ください。本記事の情報を利用される際は、ご自身の判断と責任においてお願いいたします。