由於在添加解決了衝突的文件後,出現「沒有更改 - 您忘記使用'git add'?」,所以我正面臨rebase問題?一旦我嘗試繼續rebase就會出現。有誰有線索嗎?在git rebase期間未檢測到更改
謝謝。
由於在添加解決了衝突的文件後,出現「沒有更改 - 您忘記使用'git add'?」,所以我正面臨rebase問題?一旦我嘗試繼續rebase就會出現。有誰有線索嗎?在git rebase期間未檢測到更改
謝謝。
當您通過選擇文件的「他們的」版本解決衝突時(或者如果您手動編輯文件並應用更改並且文件與「他們的」版本相同),就會發生這種情況。
如果在解決所有衝突後,沒有對工作樹進行更改,則git commit
沒有任何關係。 git rebase --continue
想運行等效的git commit
來應用它正在處理的提交,但默認情況下,git commit
不會創建空提交。
在這種情況下,您應該運行git rebase --skip
而不是git rebase --continue
。
rebase會跳過它正在處理的提交,因爲在解決衝突的解決方案中,它不會在代碼中引入任何更改。
如果Git告訴你,那麼你沒有實際的改變提交。當衝突解決結束時,這可能發生在重定位情況下,導致您目前正在重新綁定的提交沒有任何更改。造成這種情況的一個常見原因可能是這些更改已經包含在基本提交中,從而使重新提交的提交變得冗餘。
然後Git會警告你它沒有任何提交/ rebase。在這種情況下,你可以決定提交一個空的提交(git commit --allow-empty
),或者你可以簡單地跳過這個當前提交(因爲它不包含任何內容)。然後,請執行git rebase --skip
。
明白了; @ poke的「git commit --allow-empty」使我朝着正確的方向前進:在推送到遠程主服務器之前,我使用了「commit --amend」,使其對團隊的其他成員「透明」,而我需要一個全新的提交避免衝突。