Git Amend
Git commit --amend
commit --amend
用於修改最新的 commit
。
它將 暫存區
中的更改與最新的 commit
合併,並建立一個新的 commit
。
這個新的 commit
將完全替換掉最新的 commit
。
Git Amend Commit Message
使用 --amend
最簡單的操作之一就是更改 commit
訊息。
讓我們更新 README.md
並 commit
示例
git commit -m "Adding plines to reddme"
[master 07c5bc5] Adding plines to reddme
1 file changed, 3 insertions(+), 1 deletion(-)
現在讓我們檢查一下 log
示例
git log --oneline
07c5bc5 (HEAD -> master) Adding plines to reddme
9a9add8 (origin/master) Added .gitignore
81912ba Corrected spelling error
3fdaa5b Merge pull request #1 from w3schools-test/update-readme
836e5bf (origin/update-readme, update-readme) Updated readme for GitHub Branches
daf4f7c (origin/html-skeleton, html-skeleton) Updated index.html with basic meta
facaeae (gh-page/master) Merge branch 'master' of https://github.com/w3schools-test/hello-world
e7de78f Updated index.html. Resized image
5a04b6f Updated README.md with a line about focus
d29d69f Updated README.md with a line about GitHub
e0b6038 merged with hello-world-images after fixing conflicts
1f1584e added new image
dfa79db updated index.html with emergency fix
0312c55 Added image to Hello World
09f4acd Updated index.html with a new line
221ec6e First release of Hello World!
糟糕!commit
訊息裡有拼寫錯誤。太尷尬了。讓我們 amend
一下
示例
git commit --amend -m "Added lines to README.md"
[master eaa69ce] Added lines to README.md
Date: Thu Apr 22 12:18:52 2021 +0200
1 file changed, 3 insertions(+), 1 deletion(-))
再次檢查 log
示例
git log --oneline
eaa69ce (HEAD -> master) Added lines to README.md
9a9add8 (origin/master) Added .gitignore
81912ba Corrected spelling error
3fdaa5b Merge pull request #1 from w3schools-test/update-readme
836e5bf (origin/update-readme, update-readme) Updated readme for GitHub Branches
daf4f7c (origin/html-skeleton, html-skeleton) Updated index.html with basic meta
facaeae (gh-page/master) Merge branch 'master' of https://github.com/w3schools-test/hello-world
e7de78f Updated index.html. Resized image
5a04b6f Updated README.md with a line about focus
d29d69f Updated README.md with a line about GitHub
e0b6038 merged with hello-world-images after fixing conflicts
1f1584e added new image
dfa79db updated index.html with emergency fix
0312c55 Added image to Hello World
09f4acd Updated index.html with a new line
221ec6e First release of Hello World!
我們看到之前的 commit
被我們修改過的提交替換了!
警告: 修改倉庫的 commit
歷史可能會很危險。通常情況下,對您自己的本地倉庫進行此類更改是可以的。但是,您應該避免對 remote
倉庫進行重寫歷史的操作,特別是當其他人也在使用它們時。
Git Amend Files
使用 --amend
新增檔案與上面相同。只需在提交之前將它們新增到 暫存區
。