Git 入門:Vibe Coder 必知概念

Git 是一個「時光機」——它幫你記住程式碼的每一個版本。在 Vibe Coding 時代,你不需要背指令,只需要知道 Git 能做什麼、什麼情境該用什麼功能。

這個工具解決什麼問題?

Git 是一個「時光機」——它幫你記住程式碼的每一個版本,讓你可以隨時回到過去、同時開發多個功能、與團隊協作而不會互相覆蓋。

核心概念

版本控制就像「遊戲存檔」

想像你在玩一款 RPG 遊戲:

  • Commit(提交):就是「存檔」,記錄當下的狀態
  • Repository(倉庫):就是「存檔資料夾」,存放所有存檔
  • Branch(分支):就是「不同的遊戲路線」,可以嘗試不同選擇而不影響主線

本地與遠端

  • 本地倉庫:你電腦上的存檔
  • 遠端倉庫(如 GitHub):雲端備份,也是團隊共享的地方

功能地圖

Git 能幫你做這些事:

📁 基本版本控制

  • 儲存程式碼的每個版本(存檔)
  • 查看歷史紀錄(看之前存了什麼檔)
  • 回到任何之前的版本(讀取舊存檔)
  • 比較不同版本的差異(看改了什麼)

🌿 分支管理

  • 建立新分支(開新的遊戲路線)
  • 切換分支(切換到不同路線)
  • 合併分支(把支線成果併入主線)
  • 刪除分支(清理不要的路線)

👥 團隊協作

  • 上傳到遠端(把存檔傳到雲端)
  • 下載別人的更新(同步隊友的進度)
  • 解決衝突(當兩人改同一處時怎麼辦)

🔧 進階整理

  • 暫存修改(Stash:先把手邊工作收起來)
  • 整理提交歷史(讓存檔紀錄更整齊)
  • 選擇性提交(只存部分修改)

常見情境與對應功能

情境 1:開始一個新專案

你想做什麼:把現有專案開始用 Git 管理

該用什麼功能:初始化倉庫 + 第一次提交

怎麼跟 AI 說

「幫我在這個專案初始化 Git,然後做第一次 commit」


情境 2:存檔目前的進度

你想做什麼:完成一個小功能,想記錄下來

該用什麼功能:提交(Commit)

怎麼跟 AI 說

「幫我 commit 目前的修改,commit 訊息寫『完成用戶登入功能』」


情境 3:要開發新功能

你想做什麼:開發新功能但不影響目前穩定的程式碼

該用什麼功能:建立新分支

怎麼跟 AI 說

「幫我建立一個新分支叫 feature/user-profile,然後切換過去」


情境 4:功能完成,要合併回主線

你想做什麼:新功能開發完了,要併入主程式

該用什麼功能:合併分支

怎麼跟 AI 說

「幫我把 feature/user-profile 分支合併到 main」


情境 5:想看之前改了什麼

你想做什麼:回顧歷史紀錄或找某個改動

該用什麼功能:查看日誌 / 比較差異

怎麼跟 AI 說

「幫我看最近 10 個 commit 的紀錄」

「幫我比較這個檔案跟上一版的差異」


情境 6:改壞了想回到之前的版本

你想做什麼:復原到之前正常的狀態

該用什麼功能:回退 / 復原

怎麼跟 AI 說

「幫我回到上一個 commit 的狀態」

「幫我把這個檔案恢復成 3 個 commit 之前的版本」


情境 7:寫到一半要緊急切分支

你想做什麼:手邊有未完成的修改,但要先去別的分支處理事情

該用什麼功能:暫存(Stash)

怎麼跟 AI 說

「幫我把目前的修改暫存起來,我要先切到 main 分支修 bug」

修完 bug 後:「幫我把剛才暫存的修改拿回來」


情境 8:同步遠端倉庫

你想做什麼:把程式碼上傳到 GitHub / 下載最新版本

該用什麼功能:推送 / 拉取

怎麼跟 AI 說

「幫我把這個分支 push 到 GitHub」

「幫我 pull 遠端的最新程式碼」

進階功能速查

當你準備好深入了解時,Git 還有這些進階能力:

功能 用途 何時會用到
Rebase 重新整理 commit 歷史 想讓 commit 紀錄更乾淨
Cherry-pick 只挑選特定 commit 只想拿其他分支的某個改動
Bisect 二分法找 bug 知道某版本有 bug 但不知道是哪個 commit 造成的
Submodule 嵌入其他 Git 專案 專案需要引用其他獨立維護的專案
Hook 自動化腳本 想在 commit 前自動執行檢查

遇到這些需求時,告訴 AI 你想達成什麼目的,它會幫你處理。

常見問題情境

❌ 不小心 commit 了敏感資料

跟 AI 說

「我不小心把 .env 檔 commit 了,幫我從 Git 歷史中完全移除這個檔案」


❌ Commit 訊息打錯了

跟 AI 說

「幫我修改最後一個 commit 的訊息,改成『修正登入頁面樣式』」


❌ 合併時發生衝突

跟 AI 說

「合併時發生衝突了,幫我看一下衝突的內容,然後保留兩邊的修改」


❌ 想取消還沒 commit 的修改

跟 AI 說

「幫我放棄這個檔案目前的修改,恢復成上次 commit 的狀態」

總結

在 Vibe Coding 時代,你不需要背 Git 指令。你需要的是:

  1. 知道 Git 能做什麼(版本控制、分支、協作)
  2. 遇到情境時想到對應功能(要存檔 → commit、要開發新功能 → 開分支)
  3. 用自然語言描述需求(讓 AI 幫你執行)

有了這些概念,你就能和 AI 搭配,有效率地管理你的程式碼版本!

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *