用 git commit --amend 修改 commit 紀錄
前言
在使用 Git 時,偶爾會在 commit 過程中發生一些小失誤,不管是 typo 或是部分檔案忘記加入 staged files 清單一起 commit。這種時候,git commit --amend
就是一個很方便的指令了。
--amend 參數介紹
根據 Git 官方說明,加上 --amend
參數會在「當前分支」產生一筆新的 commit 來取代最近一次的 commit 紀錄。如果沒有在使用 --amend
參數的同時追加使用 -m
、-F
或 -c
…等參數,預設會將當前分支最近一筆的 commit message 帶入用作修改預設值。
值得注意的是,說明提到「新的 commit」。表示 --amend
是用新的 commit 取代舊的,而不是直接修改原始 commit 內容,所以編號會被修改。
由於是產生一筆新的 commit ,所以最好只在尚未 push 到遠端儲存庫時使用。
--amend 使用
git commit --amend
使用時會像 git commit
一樣跳出預設文字編輯器,只是跳出時已將當前分支最近一次的 commit message 帶入。
只修改 commit message
當只想修改最近一次 commit 的 commit message (因為錯字或其他原因),不想變動 commit 的其他內容(檔案、作者訊息…等)。下面的指令可以二擇一使用:
1 |
|
將漏掉的檔案加進最近一次的 commit 裡
有時候進行多個檔案的編輯,在進行 git add
時不小心漏掉了幾個檔案沒有加到。則可以用下列方式修改:
1 |
|
文章內容如有錯誤,歡迎留言討論!
本 Blog 上的所有文章除特别聲明外,均採用 CC BY-SA 4.0 協議 ,轉載請註明出處!