這裏是場景:有一個名爲「new_feature_x」的遠程功能分支和兩個開發人員John和Max。所述 「new_feature_x」 日誌看起來像這樣:如何git rebase合併提交共享遠程分支?
5:[最大 - 更新按鈕顏色]
4:[約翰 - 合併從主提交]
3:[約翰 - 更新API調用]
2:[馬克斯 - 固定按鈕文本]
1:約翰 - 第一次提交的new_feature_x]
現在的功能是完成和約翰希望將日誌清理成一個單一的提交前合併成高手。他這樣做:
git的重訂-i -p主
但只顯示提交4和5,他確實修正了這兩個,但後來,提交1,2,3仍然在日誌中。
兩個問題:
1)如何合併一切成一個承諾?爲什麼在我執行「git rebase -i -p master」時沒有出現合併提交之前的所有內容?
2)此方案未來的最佳策略/工作流程是什麼? John和Max不應該在功能分支中使用合併提交?我記得在某個地方讀到一個永遠不應該爲遠程共享分支推送rebase的地方。從主服務器獲取更改並將其推送到遠程分支的最佳方式是什麼?目標是,當功能完成後,它可以作爲一個簡單的提交合並回主服務器。