當我對前幾次提交的更改進行修復時,我總是連續兩次結束運行rebase。是否可以一步完成這個工作流程?假設我有4個新的提交。我可以重新綁定和壓縮同時提交嗎?
* (master) D
* C
* B
* A
* Base
我在B中發現一個錯誤,所以我創建了一個分支並修復它。
* (master) D
* C
| * (fix) Fix.
|/
* B
* A
* Base
接下來,我跑git rebase --onto fix B D
C和d移動到B.
* (master) D'
* C'
* (fix) Fix.
* B
* A
* Base
最後我跑git rebase --i fix^^
看到過去幾年提交和我壓扁B和修復成一個單一的提交。
* (master) D'
* C'
* B'
* A
* Base
有沒有更快的方法來完成相同的工作流程?我想合併會更容易,但合併對我來說是因爲我使用的git svn需要線性歷史記錄。
也許'fixup'和'autosquash'選項可以在這裏幫助嗎? http://stackoverflow.com/questions/2302736/trimming-git-checkins-squashing-git-history/2302947#2302947 – VonC 2010-07-15 04:15:46
@VonC謝謝,這將至少使這些步驟更快一點。 – 2010-07-15 12:36:08
優秀(一開始)。您可以發佈一個答案,說明這些選項的步驟更快。 – VonC 2010-07-15 12:47:10