Git 路線圖Git Roadmap單元 04Unit 04
核心操作Core operation

日常查看與修改Inspect and change files daily

UNIT 04 · DAILY CHANGES

日常查看與修改Inspect and change files daily

用 status、diff、log 回答「改了什麼、準備提交什麼、以前做過什麼」。Use status, diff, and log to answer what changed, what is ready, and what happened before.

預計時間Estimated time
20–25 分鐘20–25 minutes
單元類型Unit format
教材+模擬器Lesson + simulator
需要先會Prerequisite
完成第一次 commitYour first commit

不確定時,先看,不要急著改

git status 回答目前有哪些檔案狀態;git diff 顯示尚未 staged 的差異;git diff --staged 顯示下一個 commit 準備收錄的差異。

git status
git diff
git add app.js
git diff --staged
git commit -m "調整首頁訊息"
git log --oneline

請養成「status → diff → add → diff --staged → commit」的節奏。它像設備上線前的逐項確認:先知道現況,再選擇要納入的變更,最後才建立可追溯版本。

git log --oneline 只是較精簡的歷史畫面;commit 之間的父子關係沒有因此改變。

When unsure, inspect before changing

git status tells you the current file states. git diff shows unstaged differences, while git diff --staged shows what is prepared for the next commit.

git status
git diff
git add app.js
git diff --staged
git commit -m "Adjust the home message"
git log --oneline

Build the rhythm “status → diff → add → diff --staged → commit”. It is like a line-start checklist: know the current state, select the changes you want, and only then create a traceable version.

git log --oneline is only a shorter history view; it does not change parent relationships between commits.

INTERACTIVE LAB

在安全模擬器裡親手操作

輸入指令後,Terminal、四個區域與 Git 樹會從同一份虛擬狀態同步更新。

A

WORKING DIRECTORY

正在編輯的檔案

  • README.md已提交
  • app.js已修改
  • notes.txt未追蹤
B

STAGING AREA

下一版準備內容

  • Staging Area 是空的
C

LOCAL REPOSITORY

電腦裡的版本

HEAD
→ main
目前 commit
c1
commit 數
1
D

REMOTE REPOSITORY

GitHub 示意狀態

origin
尚未設定
遠端 branch
沒有 commit
網路連線
僅記憶體模擬

教學 Terminal

不會執行真實 Git 或 shell

教學模擬器已就緒。這裡不會執行真實 Git 或讀寫你的檔案。

點一下填入:

VIRTUAL FILES

虛擬檔案編輯器

更多情境工具

LIVE GIT TREE

commit 與 branch

HEAD → main
  1. c1
    HEAD → main
    建立專案parent:無(第一個 commit)

CHECKPOINT

離開前,確認你能用自己的話說明Before you leave, explain it in your own words

  1. 這些指令改變 Git 的哪一個區域?
  2. Git 樹上的 branch 與 HEAD 移到哪裡?
  3. 失敗時 repository 是否保持原狀?
  4. 真實專案操作前,應先查看什麼?
  1. Which Git area does this command change?
  2. Where do the branch and HEAD move in the Git tree?
  3. Does the repository stay unchanged when the command fails?
  4. What should you check before operating on a real project?

免責聲明:本站內容為個人學習、實作與經驗分享紀錄,部分內容透過 AI 協助修正與整理。由於每位使用者的系統環境、軟體版本、權限設定與操作方式不同,實際結果可能有所差異。請在操作前自行評估風險並備份重要資料。因參考本站內容所造成之任何系統異常、資料遺失、設定錯誤、設備故障、服務中斷或其他直接、間接損失,均由使用者自行承擔,本站與作者不負任何相關責任。

Disclaimer: This site records personal learning, implementation, and experience sharing, with some content edited and organised with AI assistance. Results may differ because every user has a different system environment, software version, permission setup, and workflow. Assess risks and back up important data before trying anything. You are responsible for any system errors, data loss, configuration mistakes, equipment faults, service interruptions, or other direct or indirect losses resulting from using this content.