學(xué)習(xí)完整課程請(qǐng)移步 互聯(lián)網(wǎng) Java 全棧工程師
本節(jié)視頻
概述
工作流有各式各樣的用法,但也正因此使得在實(shí)際工作中如何上手使用增加了難度。這篇指南通過(guò)總覽公司團(tuán)隊(duì)中最常用的幾種 Git 工作流讓大家可以上手使用。
在閱讀的過(guò)程中請(qǐng)記住,本文中的幾種工作流是作為方案指導(dǎo)而不是條例規(guī)定。在展示了各種工作流可能的用法后,你可以從不同的工作流中挑選或揉合出一個(gè)滿足你自己需求的工作流。
集中式工作流
如果你的開(kāi)發(fā)團(tuán)隊(duì)成員已經(jīng)很熟悉 Subversion,集中式工作流讓你無(wú)需去適應(yīng)一個(gè)全新流程就可以體驗(yàn) Git 帶來(lái)的收益。這個(gè)工作流也可以作為向更 Git 風(fēng)格工作流遷移的友好過(guò)渡。
功能分支工作流
功能分支工作流以集中式工作流為基礎(chǔ),不同的是為各個(gè)新功能分配一個(gè)專門的分支來(lái)開(kāi)發(fā)。這樣可以在把新功能集成到正式項(xiàng)目前,用 Pull Requests
的方式討論變更。
GitFlow 工作流
GitFlow 工作流通過(guò)為功能開(kāi)發(fā)、發(fā)布準(zhǔn)備和維護(hù)分配獨(dú)立的分支,讓發(fā)布迭代過(guò)程更流暢。嚴(yán)格的分支模型也為大型項(xiàng)目提供了一些非常必要的結(jié)構(gòu)。
Forking 工作流
Forking 工作流是分布式工作流,充分利用了 Git 在分支和克隆上的優(yōu)勢(shì)。可以安全可靠地管理大團(tuán)隊(duì)的開(kāi)發(fā)者(developer),并能接受不信任貢獻(xiàn)者(contributor)的提交。
Pull Requests
Pull requests 讓開(kāi)發(fā)者更方便地進(jìn)行協(xié)作的功能,提供了友好的 Web 界面可以在提議的修改合并到正式項(xiàng)目之前對(duì)修改進(jìn)行討論。