我正處于互動式 rebase 的中間,并且我已經修改了幾個提交。
我還有幾個標記為要編輯的剩余提交,但我決定不再編輯它們。
我怎樣才能結束 rebase(如果你愿意的話,盡早結束)但保留我到目前為止所做的更改?
git rebase --abort將結束 rebase 并洗掉我所做的所有更改,并且git rebase --continue對于我必須編輯的每個剩余提交都輸入太乏味。??
uj5u.com熱心網友回復:
你可以運行:
git rebase --edit-todo
編輯剩余提交的說明。然后,您將能夠將您標記為的所有提交更改edit為pick. 然后運行:
git rebase --continue
它會一直持續到最后(除非發生沖突)。
uj5u.com熱心網友回復:
這有點 hacky,但是您可以嘗試使用一個while回圈來檢查.git/REBASE_HEADor .git/rebase-merge(僅在 rebase 正在進行時才存在)。
在 Linux/Mac(或 Windows 上的 Git Bash)上,執行此操作的命令為:
cd path/to/your/project
while [ -f .git/REBASE_HEAD ]; do git rebase --continue || break; done
where[ -f .git/REBASE_HEAD ]檢查檔案是否REBASE_HEAD存在.git(或者您可以使用[ -d .git/rebase-merge ]檢查目錄rebase-merge)。
此外,如果失敗(例如發生沖突時) ,git rebase --continue || break也會從回圈中中斷。git rebase --continue
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/432578.html
標籤:混帐 变基 git-rebase git-interactive-rebase
下一篇:通過luanginx捕獲標頭
