九號工具站
返回列表

Git 與 GitHub 新手教學 2026:5 天搞懂版本控制與協作流程

零基礎也能學會的 Git 與 GitHub 教學。5 天實戰計畫涵蓋初始化、commit、push、分支、PR、衝突處理,搭配 AI 工具輔助,讓你從完全不會到能加入團隊協作。

Git 教學 GitHub 入門 版本控制 Git commit Pull Request 協作開發 2026

最後更新:2026-04-22

1. 為什麼不會 Git 就不叫會寫程式

寫程式的人不會 Git 就像廚師不會用刀。Git 不是選修,是基本功。它解決三個痛點:(1) 你改壞程式時能回到之前的版本 (2) 多個人同時改一個專案不會打架 (3) 把程式備份到雲端不怕電腦壞掉。2026 年所有科技公司的面試都會問 Git,沒在 GitHub 上放作品的工程師等於沒作品。好消息是,Git 的核心只要 10 個指令就能走天下,5 天足夠新手上手。

  • Git 和 GitHub 不一樣

    Git 是版本控制工具(裝在你電腦上)、GitHub 是程式碼託管平台(雲端服務)。類似 Word vs Google Docs 的關係

  • 為什麼一定要學

    (1) 業界標準,幾乎所有團隊都在用 (2) 作品集必備,GitHub profile 是工程師的履歷 (3) 個人專案備份,避免悲劇

  • 常見替代品比較

    GitHub(最主流、社群大)、GitLab(自架友善、CI/CD 強)、Bitbucket(整合 Atlassian 產品)。新手一律選 GitHub

小提示

  • 不要被 GUI 工具(SourceTree、GitHub Desktop)寵壞,先學 command line 打底,之後用 GUI 才知道它在做什麼
  • GitHub 帳號名稱會永遠跟著你,選一個你願意寫進履歷的(避免 babydoll520 這種)

2. Day 1:安裝 Git、建立 GitHub 帳號、設定 SSH

第一天把環境準備好。裝 Git、註冊 GitHub、設定 SSH key 讓兩邊能通訊。這一步是大多數新手卡關的地方,跟著步驟做完,之後的流程都會順利很多。

  • Step 1:安裝 Git

    Mac 用 brew install git、Windows 下載 git-scm.com 安裝檔、Linux 用 apt install git。裝完 git --version 確認

  • Step 2:設定身份

    git config --global user.name "你的名字" 和 git config --global user.email "你的信箱",這會出現在每個 commit 上

  • Step 3:註冊 GitHub

    到 github.com 註冊免費帳號。信箱建議用常用的 Gmail。用戶名和 email 盡量和 Git 設定一致

  • Step 4:產生 SSH key

    ssh-keygen -t ed25519 -C "你的信箱",一路 Enter 產生金鑰。把 ~/.ssh/id_ed25519.pub 的內容貼到 GitHub 的 Settings → SSH keys

  • Step 5:測試連線

    ssh -T [email protected] 看到 'Hi xxx! You've successfully authenticated' 就成功了

小提示

  • Windows 用 Git Bash 比 PowerShell 順,裝 Git 時會自動安裝
  • SSH key 弄不出來就先用 HTTPS + Personal Access Token 頂著,之後有空再設 SSH

3. Day 2:核心指令 init / add / commit / push

第二天學會最核心的本地操作。這四個指令是 Git 的 80%,用熟了就解決大部分情境。建議開一個新的練習資料夾,跟著打一遍,有肌肉記憶後才不會忘。

  • git init — 初始化 repo

    在資料夾裡打,會產生 .git 隱藏資料夾開始追蹤版本。這是把普通資料夾變成 Git 專案的第一步

  • git status — 看目前狀態

    看哪些檔案改了、哪些已加入暫存區。用頻率最高的指令,卡住時先打這個看發生什麼事

  • git add — 把檔案加入暫存區

    git add 檔名 加單檔、git add . 加全部。這步是「告訴 Git 這次要 commit 哪些檔案」

  • git commit — 提交版本

    git commit -m "commit 訊息"。訊息要寫清楚做了什麼,不要寫「update」、「修改」這種沒資訊量的

  • git push — 推到 GitHub

    git push origin main。首次 push 要先設 remote:git remote add origin [email protected]:你的帳號/repo.git

小提示

  • Commit 訊息格式推薦:類型: 描述 例如「feat: 新增登入功能」、「fix: 修正 null 檢查」、「docs: 更新 README」
  • 新手常犯錯:commit 訊息寫「修改」、「update」——未來除錯時你自己都看不懂改了什麼

4. Day 3:分支(Branch)與合併(Merge)

第三天學分支。分支是 Git 最強大的功能,讓你可以平行開發多個功能不互相干擾。新手常誤解分支很複雜,其實核心只有三個指令:建分支、切分支、合併分支。

  • git branch — 分支管理

    git branch 列出所有分支、git branch 名稱 建新分支、git branch -d 名稱 刪除分支

  • git checkout / switch — 切換分支

    git switch 名稱 切分支(新語法)、git switch -c 名稱 建並切到新分支(-c = create)

  • git merge — 合併分支

    先切到目標分支(例如 main),再 git merge 要併入的分支。如有衝突需手動解決

  • 常見分支命名慣例

    feature/功能名 新功能、fix/bug 描述 修 bug、hotfix/緊急修復、release/版本 發布前準備

小提示

  • 養成「不在 main 直接改」的習慣:任何修改都先開 feature 分支。練習時就養成,真正上線才不會出包
  • 分支名稱用 kebab-case(連字號)不用底線或空格,例如 feature/user-login 而非 feature/user_login

5. Day 4:Pull Request(PR)與 Code Review

第四天學 GitHub 上的協作流程。Pull Request 是團隊開發的核心——你在分支做完修改後,發 PR 請同事 review 後再合併。這是所有科技公司工作的基本流程,沒學會等於沒入門現代軟體開發。

  • 完整 PR 流程

    (1) 從 main 建 feature 分支 (2) 寫程式 commit push (3) 在 GitHub 開 PR 選 base branch (4) 請 reviewer (5) 根據意見修改 (6) approve 後 merge

  • 寫好的 PR 描述

    標題用 50 字內摘要、本文包含「做了什麼、為什麼、怎麼測試」。模板可用 GitHub 的 PR template 功能

  • Code Review 禮儀

    被 review 時別對人、對事;review 別人時先誇再提意見;反對要給理由和替代方案;小爭議用 comment,大問題用會議討論

  • merge 策略選擇

    Merge commit(保留完整歷史)、Squash merge(壓成一個 commit 較乾淨)、Rebase merge(線性歷史但較進階)。新手選 Squash 最安全

小提示

  • PR 越小越好——100 行內的 PR 通過率遠高於 1000 行的。大功能拆成多個小 PR
  • Draft PR 功能很好用:程式沒寫完就能開 PR 收早期回饋,不會誤觸發 merge

6. Day 5:衝突處理與進階救援指令

第五天學最讓新手害怕的「衝突解決」和「程式壞了怎麼救」。衝突其實不可怕,只是兩個人改同一行的情況。救援指令則是當你 commit/merge/push 錯東西時的後悔藥——Git 幾乎所有操作都可以回復,除非你亂下 --force。

  • 衝突處理步驟

    (1) git merge 後看到 CONFLICT (2) 打開衝突檔案看到 <<<<<<< HEAD 標記 (3) 手動決定保留哪邊或融合 (4) 刪除標記行 (5) git add + git commit 完成合併

  • 救援指令 1:git restore

    git restore 檔名 = 還原工作目錄變更(丟棄未 commit 修改)、git restore --staged 檔名 = 從暫存區撤回

  • 救援指令 2:git reset

    git reset HEAD~1 = 撤銷最近一次 commit 保留修改、git reset --hard HEAD~1 = 完全放棄(危險,修改也沒了)

  • 救援指令 3:git revert

    git revert 某commit = 產生一個反轉該 commit 的新 commit。用在已 push 的情況,比 reset 安全

  • 終極救命符:git reflog

    reflog 記錄你所有操作,包括被 reset 掉的 commit。找到要救的 commit hash 再 checkout 它

小提示

  • 遇到衝突不要慌,先用 VS Code 內建的 Git merge 工具,UI 比 command line 直覺
  • 任何 --force 指令操作前先停 5 秒,想清楚再按 Enter。push --force 到共用分支會讓同事哭

7. 新手常犯 8 大錯誤與 Git 禮儀

最後整理新手最常見的錯誤和團隊合作的不成文規則。避開這些雷區,你在任何團隊都會被當成「有經驗」的同事而不是麻煩。

  • 錯誤 1:把大檔案 commit 進去

    影片、資料庫、build 產物都不該進 repo。用 .gitignore 排除。已 commit 進去要用 git rm 或 BFG Repo-Cleaner 移除

  • 錯誤 2:把密鑰 push 上公開 repo

    API key、密碼、憑證一旦 push 上 GitHub 就算刪了也被爬走。用 .env + .gitignore 管理秘密

  • 錯誤 3:commit 訊息寫「update」

    一個月後你自己都看不懂。至少寫「修正登入頁密碼驗證邏輯」這種

  • 錯誤 4:一個 commit 改一堆無關東西

    一個 commit 做一件事,方便之後 revert 和 review。大改動分多次 commit

  • 錯誤 5:直接在 main 分支工作

    就算是個人專案也養成開 branch 的習慣。公司專案這樣做會被罵

  • 錯誤 6:不寫 README

    專案沒 README 等於沒作品。至少寫清楚:這是什麼、怎麼跑、有什麼功能

  • 錯誤 7:不定期 pull

    早上第一件事 git pull 同步最新。一週不 pull 合併時會哭

  • 錯誤 8:--force 亂用

    push --force 到共用分支 = 刪同事的 commit。個人分支 force 可以,共用分支用 --force-with-lease 較安全

小提示

  • 好的 Git 使用者 = 可預測的 Git 使用者。團隊知道你不會搞破壞才會信任你碰 main 分支
  • 遇到不懂的 Git 問題,貼錯誤訊息給 AI 問解法,95% 的情況都能得到正確指引

注意事項

本文所述指令與流程為一般開發慣例,不同團隊可能有不同規範。執行任何破壞性操作(reset --hard、push --force、分支刪除)前請先備份或與團隊確認。資安類提醒(密鑰管理、公開 repo 風險)僅供參考,企業環境請遵守公司資訊安全規範。

重點整理

  • 1 Git 是版本控制工具(本機)、GitHub 是雲端託管平台(雲端),兩者不同但常搭配使用
  • 2 Day 1 裝好環境、設 SSH;Day 2 學會 init/add/commit/push 四大核心指令
  • 3 Day 3 學分支、Day 4 學 Pull Request 和 Code Review 流程
  • 4 Day 5 學衝突解決與救援指令:restore、reset、revert、reflog
  • 5 避開 8 大新手錯誤:別 commit 大檔案、別 push 密鑰、別亂用 --force
  • 6 好 Git 使用者 = 可預測 + 訊息清楚 + 不搞破壞的使用者
ℹ️

一般聲明

本站提供之資訊僅供參考,不保證其完整性與正確性。使用者應自行判斷資訊之適用性。

意見反饋