安安,我是 ChiYu!
昨天,我們扮演了「技師與軍火官」的角色,把我們的駕駛艙 (VS Code) 從毛胚屋打造成了精裝房,並備妥了所有核心的建材與燃料 (Python & Node.js)。
我們的開發環境已經準備就緒,但在我們正式動工、蓋起萬丈高樓之前,還有一件至關重要的事要做:我們需要為我們的建築工地,安裝一套最頂級的「安全監控系統」與「時光倒流機器」。
今天,我們就要來深入軟體開發中最最最重要的觀念——版本控制,並親手設定我們專案的「雲端保險庫」與「時光機總部」:Git 與 GitHub。
在開始操作前,我們先用白話文搞懂什麼是「版控 (版本控制)」。你可以把它想像成玩遊戲時的「存檔」機制。
你在寫報告時,是不是常常會這樣做:企劃書_v1.docx
、企劃書_v2_改了標題.docx
、企劃書_最終版.docx
、企劃書_最終版真的啦.docx
?這就是最原始、最土炮的「手動版本控制」。你害怕把東西改壞,所以存了一大堆備份,最後連自己都搞不清楚哪個才是最新的。
而「版本控制系統」就是一個專業、自動化的工具,來幫你優雅地做這件事。它的好處有:
很多新手會把這兩個搞混,我們用一個簡單的比喻來拆解:
在我們建立倉庫之前,你必須先理解「分支 (Branching)」這個專業開發中最重要的概念。
你可以把你的專案想像成一部電影的「主線劇情」,這條主線就是所謂的 main
分支。main
分支上的程式碼,永遠都必須是最穩定、可以正常運作的版本。
那如果我想開發一個新功能,例如「使用者登入」,我總不能直接在主線上亂改吧?萬一改到一半,主線劇情就崩潰了!
這時候,「分支」就登場了。我們可以從 main
主線上,拉出一條叫做 feat/login
的「支線劇情」(平行時空)。在這條支線上,我們可以盡情地開發、修改、測試登入功能,就算把它改爛了,也完全不會影響到 main
主線的穩定。
等到我們在這條支線上,把登入功能做得完美無缺了,我們就可以提出一個「合併請求 (Pull Request)」,請求專案管理員(也就是你自己)審核。一旦審核通過,我們就可以把這條 feat/login
支線,安全地合併回 main
主線中,讓主線劇情向前推進。
這就是專業開發的日常:在分支上開發,在主線上整合。
好了,理論武裝完畢,讓我們來親手蓋起我們的「雲端機棚」!
Step 1:建立倉庫 (Create Repository)
GitHub
2025-iThome-HabitTracker
。Step 2:把雲端倉庫「複製」到你的電腦 (Clone)
現在雲端上有個專案,我們要把它完整地複製一份到自己的電腦裡。
cd
指令切換到你想存放專案的資料夾。git clone [貼上你剛剛複製的網址]
,然後按下 Enter。太神啦!我們今天完成了技師的工作。現在,當你看到 VS Code 左邊的檔案總管,已經出現了專案的資料夾與 README.md
、.gitignore
檔案時,就代表一切準備就緒了!
我們的駕駛艙不但功能齊全、裝潢精美,停機坪也準備就緒,隨時可以起飛!明天,我們就要來安裝我們 Vibe Coding 的核心引擎——Gemini CLI,並且在終端機裡,下達我們與 AI 協作的第一個魔法指令!敬請期待!