ソフトウェア開発においてバージョン管理は最も重要なスキルの一つです。Gitはその事実上の標準であり、GitHubはGitを活用したコラボレーションプラットフォームです。本記事では、ゼロからGit/GitHubを使いこなすための完全ガイドを提供します。
1. Gitとは?GitHubとは?
- Git:分散型バージョン管理システム。ファイルの変更履歴を記録・管理するツール
- GitHub:Gitリポジトリのホスティングサービス。チーム開発のコラボレーション機能を提供
2. 初期設定
# Gitのインストール確認
git --version
# ユーザー名とメールアドレスの設定
git config --global user.name "あなたの名前"
git config --global user.email "your@email.com"
# デフォルトブランチ名をmainに
git config --global init.defaultBranch main
# エディタの設定(VS Code)
git config --global core.editor "code --wait"
# 設定確認
git config --list
3. 基本コマンド
# リポジトリの初期化
git init
# 変更状況の確認
git status
# ファイルをステージング
git add index.html # 特定ファイル
git add . # すべての変更
# コミット(変更を記録)
git commit -m "feat: ヘッダーコンポーネントを追加"
# コミット履歴の確認
git log --oneline --graph -10
# リモートリポジトリの追加と接続
git remote add origin https://github.com/username/repo.git
# プッシュ(リモートに送信)
git push -u origin main
# プル(リモートから取得&マージ)
git pull origin main
# 変更を一時退避
git stash
git stash pop
✅ コミットメッセージのベストプラクティス
Conventional Commitsの形式を推奨します:feat:(機能追加)、fix:(バグ修正)、docs:(ドキュメント)、style:(コード整形)、refactor:(リファクタリング)
広告
4. ブランチ戦略
# ブランチの作成と切り替え
git checkout -b feature/user-auth
# ブランチ一覧
git branch -a
# ブランチの切り替え
git checkout main
# ブランチのマージ
git checkout main
git merge feature/user-auth
# マージ済みブランチの削除
git branch -d feature/user-auth
Git Flow(推奨ブランチ戦略)
- main:本番環境に対応、常にデプロイ可能な状態
- develop:開発ブランチ、次のリリースに向けた統合ブランチ
- feature/*:新機能開発用(developから分岐)
- hotfix/*:緊急修正用(mainから分岐)
- release/*:リリース準備用
5. プルリクエスト
プルリクエスト(PR)はコードレビューの仕組みです。直接mainにpushせず、PRを通じてレビューを受けることで、コードの品質を維持します。
良いPRの書き方
- タイトルを明確に:「ユーザー認証機能の追加」
- 概要を記載:何を変更したか、なぜ変更したか
- スクリーンショットを添付(UI変更の場合)
- 変更が小さいこと:1PRにつき1機能
- テストを含める
6. コンフリクト解決
複数人が同じファイルを編集するとコンフリクトが発生します。
# コンフリクト発生時の表示
<<<<<<< HEAD
const greeting = "おはようございます";
=======
const greeting = "こんにちは";
>>>>>>> feature/greeting-update
# 解決方法:
# 1. どちらかを選ぶ、または両方を統合する
# 2. マーカー(<<<, ===, >>>)を削除
# 3. ファイルを保存
const greeting = "こんにちは"; # 正しい方を残す
# 4. ステージングとコミット
git add .
git commit -m "fix: greetingのコンフリクトを解決"
💡 VS Codeでのコンフリクト解決
VS Codeにはコンフリクト解決の専用UIがあり、「Accept Current」「Accept Incoming」「Accept Both」ボタンでワンクリックで解決できます。
Git/GitHubは最初は複雑に感じますが、基本コマンドの7割は日常的に使う5〜6個です。まずはadd → commit → push → pullのサイクルをマスターし、徐々にブランチやPRの活用に進んでいきましょう。