🔥

初心者向けのGitとGitHubの丁寧な解説

2024/10/22に公開

Gitとは?

Gitはバージョン管理システムの一つです。
簡単に言えば、ファイルの変更履歴を記録・管理するためのツールです。
例えば、Wordで文章を書いているときに「最終版」「最終版_修正済み」「最終版_完成」といったファイルを作ったことはありませんか?
Gitを使えば、そのような管理が不要になり、いつでも過去のバージョンに戻ることができます。

Gitの基本概念

Gitを理解するために重要な概念を説明します。

リポジトリ(Repository)
├── ローカルリポジトリ(自分のPC上にある)
└── リモートリポジトリ(GitHubなどのサーバー上にある)

作業ディレクトリとステージング領域

Gitには3つの重要な領域があります。

領域名 説明 例え
作業ディレクトリ 実際にファイルを編集する場所 下書きを書く机
ステージング領域 コミット前の一時的な保管場所 清書する用紙
リポジトリ 変更履歴が保存される場所 完成原稿の保管庫

Gitの基本コマンド

1. 初期設定

# 名前の設定
git config --global user.name "Your Name"

# メールアドレスの設定
git config --global user.email "your.email@example.com"

2. リポジトリの作成と初期化

# 新しいリポジトリを作成
git init

3. 基本的な操作

# ファイルの状態確認
git status

# ファイルをステージング領域に追加
git add ファイル名

# 変更を記録(コミット)
git commit -m "コミットメッセージ"

実践的なGitワークフロー

実際の開発では、以下のような流れで作業を進めることが多いです。

  1. ブランチを作成する
git checkout -b feature/new-function
  1. ファイルを編集する

  2. 変更をステージングに追加する

git add .
  1. 変更を記録(コミット)する
git commit -m "新機能を追加"
  1. リモートリポジトリに変更を反映する
git push origin feature/new-function

ブランチの概念と使い方

ブランチは並行して開発を進めるための機能です。

ブランチの基本操作

# ブランチの一覧表示
git branch

# ブランチの作成
git branch ブランチ名

# ブランチの切り替え
git checkout ブランチ名

# ブランチの作成と切り替えを同時に行う
git checkout -b ブランチ名

ブランチの命名規則

一般的なブランチの命名規則を紹介します。

プレフィックス 用途
feature/ 新機能開発 feature/login-form
bugfix/ バグ修正 bugfix/header-layout
hotfix/ 緊急の修正 hotfix/security-issue
release/ リリース準備 release/v1.0.0

コンフリクトの解決方法

コンフリクトは、同じファイルの同じ箇所が異なるブランチで編集された場合に発生します。

コンフリクト解決の手順

  1. コンフリクトが発生したファイルを確認
git status
  1. ファイルを開いて競合している箇所を確認
<<<<<<< HEAD
現在のブランチの内容
=======
マージしようとしているブランチの内容
>>>>>>> feature/new-function
  1. 競合箇所を適切に修正

  2. 修正したファイルをステージングに追加

git add 修正したファイル
  1. マージを完了
git commit -m "コンフリクトを解決"

参考

https://amzn.to/4hix02f

Discussion