簡體   English   中英

如何在不更改提交消息的情況下修改提交(重用前一個)?

[英]How to amend a commit without changing commit message (reusing the previous one)?

有沒有辦法在沒有vi (或您的$EDITOR )彈出修改您的提交消息的選項的情況下修改提交,而只是重用以前的消息?

從 Git 1.7.9開始,您還可以使用git commit --amend --no-edit來獲取結果。

請注意,這將不包括來自其他提交的元數據,例如時間戳或標簽,這對您可能很重要,也可能不重要。

git commit -C HEAD --amend會做你想做的事。 -C選項從另一個提交中獲取元數據。

另一種(愚蠢的)可能性是git commit --amend <<< :wq如果你有 vi(m) 作為$EDITOR

要擴展已接受的答案,您還可以執行以下操作:

git commit --amend --no-edit -a

添加當前更改的文件。

您可以保存使用已接受答案別名,以便可以像這樣使用它:

git opps

添加所有內容,並使用相同的提交消息進行修改

git oops -m "new message"

使用新的提交消息。


這是別名:

 oops = "!f(){ \
    git add -A; \
    if [ \"$1\" == '' ]; then \
        git commit --amend --no-edit; \
    else \
        git commit --amend \"$@\"; \
    fi;\
}; f"

只是為了增加一些清晰度,您需要使用git add進行更改,然后修改最后一次提交:

git add /path/to/modified/files
git commit --amend --no-edit

如果您忘記在上次提交中添加一些更改,或者當您想添加更多更改而不通過重用上次提交來創建新提交時,這尤其有用。

傻瓜完整教程

完成代碼更改后。

1.- git status檢查terminal的變化;

2.-使用git add. git add /your.file/以逐個文件執行此操作,使用前面的命令將幫助您完成最后一個選項;

3.-一旦您的更改已經上演,您現在可以使用git --ammed --no-edit 這會將您最近的更改添加到上一次提交中,而無需編輯消息。

4.-最后,如果您沒有推送之前的提交,只需執行git pushgit push origin/yourBranch
如果您已經推送了最后一次提交,請使用git push -fgit push -f origin/yourBranch

請記住始終在自己的分支中工作!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM