章節 8 送交修改

學習目標

送交已變更檔案 01

好了!到目前為止我們談了很多關於暫存(Staging)的運用和觀念。 接著讓我們將這些異動保存到檔案庫中吧!

當您使用git commit 送交hello.rb檔案初始版本到檔案庫之前,, 您可以加上 -m 參數來幫這次的送交下註解。 git commit 還提供了互動的方式來對該次地送交設定註解。現在讓我們來操作看看

如果你省略 -m 參數,git 會自動開啟預設的文字編輯器。 編輯器將會按照您的偏好設定的參數如下列表順序:

我的預設編輯器EDITOR 設定為 emacsclient.

接著送交並且檢視狀態。

執行:

git commit

您將會看到下面內容在您的編輯器中(通常在Unix like環境下是vi/vim):

輸出:

|
# Please enter the commit message for your changes. Lines starting
# with '#' will be ignored, and an empty message aborts the commit.
# On branch master
# Changes to be committed:
#   (use "git reset HEAD <file>..." to unstage)
#
#	modified:   hello.rb
#

在第一行輸入註解: “Using ARGV”. 存檔並離開編輯器. 您將會看到 …

輸出:

git commit
Waiting for Emacs...
[master 569aa96] Using ARGV
 1 files changed, 1 insertions(+), 1 deletions(-)

“Waiting for Emacs…” 這行訊息來自emacsclient 應用程式,它將檔案送到正在運行的 emacs 等待檔案處理完並結束程式。其他的回應訊息則是 git 所提供的互動訊息。

檢視狀態 02

最後,讓我們再來檢視一次狀態

執行:

git status

您將會看到 …

輸出:

$ git status
# On branch master
nothing to commit (working directory clean)

工作目錄的狀態和檔案庫一致,顯示的訊息非常單純,沒有任何變更需要送交。而您可以繼續執行其他動作。

目錄