---
title: "01 - 什麼是 Git 與版本控制"
type: note
specialty: Programming
tags: [git-github, 01-什麼是git與版本控制]
---

# 01 - 什麼是 Git 與版本控制

← [[00-Index]] | 下一篇 → [[02-安裝與初始設定]]

---

## 🤔 為什麼需要版本控制？

你有沒有過這種經驗：

- 改了一個檔案，結果壞掉了，想回到之前的版本卻找不到
- 資料夾裡有 `report.docx`、`report_final.docx`、`report_final2.docx`、`report_真的最終版.docx`
- 和別人一起改同一個檔案，互相覆蓋對方的進度

**版本控制（Version Control）** 就是為了解決這些問題而存在的系統。它會幫你：

1. **記錄每一次的修改**（誰改了什麼、什麼時候改的）
2. **隨時回到過去的版本**
3. **讓多人協作不打架**

---

## 🔧 什麼是 Git？

**Git** 是目前全世界最流行的版本控制系統，由 Linux 之父 Linus Torvalds 在 2005 年創造。

### Git 的特點

| 特點 | 說明 |
|------|------|
| **分散式** | 每個人電腦都有完整的紀錄，不依賴中央伺服器 |
| **速度快** | 大部分操作都在本地進行，不需要網路 |
| **免費開源** | 完全免費使用 |
| **業界標準** | 幾乎所有軟體公司都在用 |

### Git 的核心概念

```
工作區（Working Directory）
  ↓  git add
暫存區（Staging Area / Index）
  ↓  git commit
本地倉庫（Local Repository）
  ↓  git push
遠端倉庫（Remote Repository，如 GitHub）
```

- **工作區**：你實際在電腦上編輯的資料夾
- **暫存區**：準備要存檔的「購物車」，可以選擇哪些修改要一起存
- **本地倉庫**：已經確認存下來的歷史紀錄（在你電腦上）
- **遠端倉庫**：備份到網路上的版本（如 GitHub）

---

## 🐙 什麼是 GitHub？

**GitHub** 是一個存放 Git 倉庫的網路平台（雲端備份 + 協作平台）。

> Git ≠ GitHub
> Git 是工具（軟體），GitHub 是平台（網站）

類似的平台還有：GitLab、Bitbucket，但 GitHub 是最多人用的。

---

## 📌 小結

- **Git** = 本地的版本控制工具
- **GitHub** = 雲端的程式碼存放平台
- 一起用 = 本地有紀錄 + 雲端有備份 + 可以多人協作

---

← [[00-Index]] | 下一篇 → [[02-安裝與初始設定]]
