以下是原文翻译成繁體中文的版本:

Git - Review Changes

# Git - 檢視變更:初學者的全面指南

你好啊,未來的編程超級巨星!歡迎你們深入了解Git的世界以及如何檢視變更。我是你們親切的鄰居計算機科學老師,我很興奮能夠帶領你們踏上這次刺激的旅程。別擔心你們是編程新手——我們會一步步來,很快你們就能像專業人士一樣檢視變更!

## 為什麼要檢視變更?

在我們深入細節之前,讓我們先來討論一下為什麼檢視變更是如此重要。想像你正在和你的朋友們一起寫一個故事。你肯定不會希望有人在不讓你知道的情況下改變整個情節,對吧?這就是我們在Git中檢視變更的原因——為了跟蹤我們代碼中發生的事情,並確保一切都在正確的軌道上。

## 了解Git基礎

### 什麼是Git?

Git就像是你代碼的時間機器。它記錄你做的每一個變更,讓你可以在需要時回到過去。酷吧?

### Git工作流程

讓我們將Git工作流程分解成簡單的步驟:

1. 創建或修改文件
2. 將變更添加到暫存區
3. 提交變更
4. 檢視變更

現在,讓我們專注於最後一步——檢視變更。

## 在Git中檢視變更

### `git status` 命令

`git status` 命令是你在檢視變更時的最佳夥伴。它就像是在問Git,“嘿,有什麼新聞?”

```bash
git status

這個命令將顯示給你:

  • 哪些文件已經被修改
  • 哪些文件已經被暫存等待提交
  • 哪些文件是未跟蹤的

假設你修改了一個叫做 hello_world.py 的文件。當你運行 git status 時,你可能會看到像這樣的東西:

在 main 分支上
未暫存以供提交的變更:
  (使用 "git add <file>..." 來更新將被提交的內容)
  (使用 "git restore <file>..." 來棄置工作目錄中的變更)
        修改:   hello_world.py

沒有變更被添加到提交(使用 "git add" 和/或 "git commit -a")

這告訴我們 hello_world.py 已經被修改但還沒有被暫存等待提交。

git diff 命令

現在,如果你想知道你具體做了哪些變更呢?這時 git diff 就派上用場了。它就像是在將你的代碼的兩個版本並排比較。

git diff

這將顯示你的工作目錄和最後一次提交之間的差異。例如:

diff --git a/hello_world.py b/hello_world.py
index e4762de..f8e966e 100644
--- a/hello_world.py
+++ b/hello_world.py
@@ -1 +1,2 @@
 print("Hello, World!")
+print("歡迎來到 Git!")

這個輸出告訴我們我們在 hello_world.py 文件中添加了一行新代碼 print("歡迎來到 Git!")

git log 命令

想要查看所有提交的歷史記錄?git log 命令就是你的時間機器控制面板!

git log

這將顯示所有提交的列表,從最近的開始:

提交 1a2b3c4d5e6f7g8h9i0j1k2l3m4n5o6p7q8r9s
作者:你的名字 <[email protected]>
日期:   Mon Apr 10 10:00:00 2023 +0000

    添加歡迎信息

提交 9s8r7q6p5o4n3m2l1k0j9i8h7g6f5e4d3c2b1a
作者:你的名字 <[email protected]>
日期:   Sun Apr 9 15:30:00 2023 +0000

    初始提交

每個提交都有一個唯一的標識符(那個長串的字母和數字),作者的姓名和電子郵件,日期和提交信息。

高級檢視技巧

git show 命令

想要查看特定提交的細節?git show 是你的首选命令:

git show 1a2b3c4d5e6f7g8h9i0j1k2l3m4n5o6p7q8r9s

這將顯示那個特定提交中的所有變更。

git blame 命令

現在,來個有趣的——git blame。別擔心,它並不像聽起來那樣指責人!這個命令會告訴你文件中每個變更是由誰做出的:

git blame hello_world.py

輸出可能看起來像這樣:

1a2b3c4d (你的名字 2023-04-10 10:00:00 +0000) print("Hello, World!")
9s8r7q6p (你的名字 2023-04-10 10:00:00 +0000) print("歡迎來到 Git!")

這告訴我們誰在什麼時候,在哪個提交中寫了哪一行。

檢視變更的最佳實踐

  1. 經常檢視:不要等到你有一堆變更時才檢視。要定期檢視,以便及早發現問題。
  2. 使用有意義的提交信息:未來的你(和你的隊友)會為你清晰的描述性信息感謝。
  3. 將變更分解成邏輯塊:這樣可以使檢視更為容易和有效。
  4. 使用分支:在獨立的分支上工作新功能,以保持主分支的乾淨。

結論

恭喜你們!你們剛剛升級了你的Git技能。檢視變更是開發過程中至關重要的部分,它幫助你維護乾淨、高效的代碼。記住,熟能生巧,所以不要害怕嘗試這些命令。

這裡是一個我們已經介紹過的命令的快速參考表:

命令 描述
git status 顯示變更的狀態
git diff 顯示工作目錄和最後一次提交之間的差異
git log 顯示提交歷史
git show 顯示特定提交的細節
git blame 顯示文件中每個變更是由誰做出的

快樂編程,願Git與你同在!

Credits: Image by storyset