一個反對git rebase的觀點可能是它是一個比合並更復雜的過程,如果多個開發人員共享一個功能分支,中游rebases意味着所有其他開發人員必須刪除他們的本地分支並從中央獲取全新副本存儲庫(或者開始使用差異分支)。將git merge和rebase結合起來會發生什麼?
在多個開發者共享一個分支的情況下,git merge是一個更簡單的工作流程。但是當功能完成後,最終合併到「掌握」呢?如果不是一路沿用「rebase」與master保持同步,你會一直使用'merge',但在最終交付給'master'時,你會使用交互式'rebase'來實現一個乾淨的線性歷史記錄並壓扁無趣的承諾?特別是,當'合併'提交重播或git如何處理時會發生什麼?
我遇到的理由是,難以讓所有其他團隊成員對齊rebase。我不確定這是否真的會成爲問題。他們需要能夠理解和應對突然偏離本地的遠程分支機構。 – Bryji
是的,如果分支真的處於其生命的盡頭(由於合併或重新分配給主分支),您只會執行此操作。因此,理想情況下,在重新綁定之後,您將推送主分支並刪除遠程功能分支。這樣,其他成員不應該有真正的問題 - 除了當然一般的混淆,這就是爲什麼你應該溝通這個工作流程。除此之外,他們當地的(未經過重新設計和過時的)分支不會分手,而只會過時。 – poke