0. 如果當前不在develop分支,則切換到develop分支 git checkout develop 1. 獲取develop分支最新代碼 git pull 注意:這一步正常來說應該是一個Fast-forward的情況,其它情況都代表着本地的develop和服務器的develop分支歷史不一致產生了合並操作。 為了求保險,可以增加--ff-only參數,避免非Fast-forward出現 git pull --ff-only 加上--ff-only參數后,如果是非Fast-forward情況,則報錯。 2. 建立業務代碼分支,如feature-prom git checkout -b feature-prom 3. 在本地開發並commit代碼 4. 將本地分支推送到遠程 首次推送 git push -u origin feature-prom 或 非首次推送 git push 實際開發中,3、4步可能會重復多次 5. 當開發者確認代碼都提交、推送后,在gitlab上創建並提交merge request 如果需要等待接受merge request后再做下一步開發,轉6。 如果不需要等待,直接做下一個開發,轉0。 6. 負責人接受merge request 如果一切正常,轉7。 如果有沖突不能完成merge request,轉10。 如果負責人認為代碼有問題需要進一步完善,開發者需要重復3、4步操作,不需要再次進行第5步創建merge request的操作。 7. 在本地切換到develop分支 git checkout develop 8. 獲取develop分支最新代碼 git pull 9. 刪除前面的業務代碼分支 git branch -d feature-prom 接下來做下一個開發,轉0。 10. 在本地切換到develop分支 git checkout develop 11. 獲取develop分支最新代碼 git pull 12. 切換到業務代碼分支 git checkout feature-prom 13. 合並最新develop分支代碼 git merge develop 此時一般會有沖突,需要手動解決沖突,提交所有文件 14. 推送業務分支代碼 git push 推送完成后轉6 * 注:如果在第1步的時候不是Fast-forward,或者使用--ff-only參數后報錯,可以通過以下步驟修復本地的develop分支 git checkout master git pull git branch -D develop git checkout develop