iT邦幫忙

2025 iThome 鐵人賽

DAY 13
0
Modern Web

Git 起來!每日一招學起來系列 第 13

Day 13:git init —— 建立你的 Git 新世界

  • 分享至 

  • xImage
  •  

前面 12 天,我們學會了如何操作已存在的 repository:addcommitbranchmergestash,還有設定 Git 個人化偏好。

感覺已經能在 Git 世界裡自由穿梭了,但先等一下 🤔 —— 你有沒有想過,一個全新的資料夾是怎麼變成 Git 專案的?

今天,我們要 從零開始,看看怎麼 建立一個新的 Git 專案,也就是 git init 的用途。


git init 是什麼?

init 的全名是 initialize,意思就是「初始化」。

它的工作是:

在一個資料夾裡建立 .git 隱藏資料夾,把這個資料夾變成一個 Git 專案(repository)。

換句話說,只要一行指令,就能讓普通的資料夾長出 Git 的「靈魂」 👻。

想像你要創立一個新公司,git init 就是蓋大樓、掛上招牌的第一步


基本用法

# 在目前資料夾建立 Git 專案
git init

# 在指定資料夾建立 Git 專案
git init my-project

執行後,Git 會在資料夾裡生成一個 .git/ 隱藏資料夾,裡面存放所有版本控制需要的資料:物件、分支、暫存區、設定檔等。

檢查初始化結果:

ls -a        # 可看到 .git 隱藏資料夾
git status   # 顯示目前 repository 狀態

常見情境

  • 新專案開始

    mkdir my-app   # 建立資料夾
    cd my-app      # 進入資料夾
    git init       # 初始化
    

    👉 資料夾被 Git 轉換為可追蹤檔案的專案,接著就能開始 git addgit commit

  • 轉換舊專案

    你有一個早就存在的專案,但還沒用版本控制
    git init 一下,就能馬上 Git 起來,開始進行版本控制

  • 配合遠端使用 (先知道就好,系列後續會展開說明)

    初始化完成後,可將本地 repository 與遠端 repository 連線:

    git remote add origin <遠端倉庫網址>
    git push -u origin main
    
    • origin 是遠端 repository 預設名稱
    • u 會設定上游分支,方便日後使用 git pushgit pull

.git 裡面有什麼?

雖然大部分時間你不需要進去 .git/ 看,但知道它的存在很重要:

  • HEAD:目前分支指標
  • config:專案設定(會覆蓋全域 git config
  • objects/:所有 commit、檔案的歷史內容
  • refs/:分支、標籤的指向

簡單來說,這個資料夾就是專案的「時光膠囊」,只要它存在,你的專案就能回到任何一個歷史版本。


注意事項

  1. git init 不會自動追蹤任何檔案
    • 需要搭配 git addgit commit 才能開始記錄版本。
  2. 初始化後記得建立 .gitignore
    • 避免臨時檔案或編譯檔被追蹤。
  3. 已初始化的資料夾再次執行 git init
    • Git 會提醒這已經是一個 Git 專案,不會覆蓋原有資料,但要小心別在錯的資料夾裡亂初始化。

小挑戰 💪

  1. 建立一個新資料夾,使用 git init 把它變成 Git 專案。
  2. 新增檔案(例如 README.md),使用 git add + git commit 提交第一次版本。
  3. 嘗試建立 .gitignore,加入一些臨時檔案,確認它們不會被追蹤。
  4. (選擇性挑戰) 若有遠端 repository,連線後推送第一次 commit。

小結

今天我們學到:

  • git init 會在資料夾建立 .git/,讓它成為 Git 專案
  • .git/ 裡面包含專案的所有版本歷史
  • 初始化後就能開始 git add / git commit,正式進入版本控制
  • 搭配 .gitignore 與遠端連線,可以順利進入完整開發流程

明日預告

明天我們會進一步聊到 Day 14:git remote —— 連上你的遠端寶藏庫

學會連接遠端、同步專案,讓多人協作不再混亂!


上一篇
Day 12:git config —— 打造你的專屬 Git 工作環境
下一篇
Day 14:git remote —— 建立專案的雲端橋樑
系列文
Git 起來!每日一招學起來14
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言