章節 8 送交修改
學習目標
- 了解如何將修改的內容送交到檔案庫
送交已變更檔案 01
好了!到目前為止我們談了很多關於暫存(Staging)的運用和觀念。 接著讓我們將這些異動保存到檔案庫中吧!
當您使用git commit
送交hello.rb
檔案初始版本到檔案庫之前,, 您可以加上 -m
參數來幫這次的送交下註解。 git commit 還提供了互動的方式來對該次地送交設定註解。現在讓我們來操作看看
如果你省略 -m
參數,git 會自動開啟預設的文字編輯器。 編輯器將會按照您的偏好設定的參數如下列表順序:
- GIT_EDITOR environment variable
- core.editor configuration setting
- VISUAL environment variable
- EDITOR environment variable
我的預設編輯器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)
工作目錄的狀態和檔案庫一致,顯示的訊息非常單純,沒有任何變更需要送交。而您可以繼續執行其他動作。