git commit --amend用法(摘抄)

適用場景:java

比方說,你的代碼已經提交到git庫,leader審覈的時候發現有個Java文件代碼有點問題,因而讓你修改,一般有2種方法:git

方法1:leader 將你提交的全部代碼 abandon掉,而後你回去 經過git reset …將代碼回退到你代碼提交以前的版本,而後你修改出問題的Java文件,而後 git add xx.java xxx.java -s -m 「Porject : 1.修改bug…」 日誌

最後經過 git push origin HEAD:refs/for/branchesit

方法2: 語法

leader不abandon代碼,你回去以後,修改出問題的Java文件,修改好以後,git add 該出問題.java bug

而後 git commit –amend –no-edit, 方法

最後 git push origin HEAD:refs/for/branches。總結

 

當咱們想要對上一次的提交進行修改時,咱們可使用git commit –amend命令。git commit –amend既能夠對上次提交的內容進行修改,也能夠修改提交說明。di

舉個例子:文件

Step1:咱們先在工做區中建立兩個文件a.txt和b.txt。而且add到暫存區,而後執行提交操做:

Step2:此時咱們查看一下咱們的提交日誌:

能夠看到咱們的提交日誌中顯示最新提交有兩個文件被改變。

Step3:此時咱們發覺咱們忘了建立文件c.txt,而咱們認爲c.txt應該和a.txt,b.txt一同提交,並且a.txt文件中應該有內容‘a’。因而咱們在工做區中建立c.txt,並add到暫存區。而且修改a.txt(故意寫錯語法且沒有將a.txt的修改add到暫存區):

Step4:咱們查看一下此時的提交日誌,能夠看到上次的提交0c35a不見了,而且新的提交11225好就是上次提交的修補提交,它就像是在上次提交被無視了,修改後從新進行提交了同樣:

Step5:此時咱們發現a.txt文件修改沒有成功,因而咱們還得進行一次對a.txt的修改,將a.txt add到stage,而後再執行一次與上一次相似的提交修補:

OK了,git commit –amend的用法大體就是這樣。

總結:git  commit --amend 至關於上次提交錯誤的信息被覆蓋了,gitk圖形化界面上看不到上次提交的信息,git log上也看不到以前的信息,而add 後再commit 至關於從新加了一個信息。至關於打了個補丁?

做者:shadow雨軒 連接:https://www.jianshu.com/p/a8a2ac58f37d 來源:簡書 簡書著做權歸做者全部,任何形式的轉載都請聯繫做者得到受權並註明出處。
相關文章
相關標籤/搜索