版本管理
管理目的
1.避免版本丟失和混淆
2.快速定位
版本命名
1.版本號(hào)
版本標(biāo)識(shí):標(biāo)準(zhǔn)版本、特殊版本、特殊版本(不具有通用性和適用性)
命名規(guī)范:"v"開頭,v.主版本號(hào).次版本號(hào).發(fā)布日期-后綴 v1.0.20190101-release(后綴表示是否為開發(fā)、測(cè)試、上線)
主版本號(hào):模塊比較大的變動(dòng),以十進(jìn)制表示
此版本號(hào):小的功能變化,或者 bug 修改
發(fā)布時(shí)間:發(fā)布日期
后綴:Alpha(a)版:初步完成品,面對(duì)開發(fā)人員,Beta(B)版:面對(duì)測(cè)試人員,不能發(fā)布 ,Release:用戶使用的標(biāo)準(zhǔn)版本
版本變化規(guī)則:內(nèi)部版本->測(cè)試版本->正式版本
2.版本管理工具
1.SVN-Subversion:檔案庫(kù),記錄每一次檔案的變化,瀏覽變動(dòng)即回退
2.git:
差異:svn 只有中央檔案庫(kù),git 分布式(本地庫(kù)和遠(yuǎn)程庫(kù)的區(qū)別);git 相對(duì)于 svn 快速
3.git 工作流
1.集中式工作流
跟 svn 類似,只有 一個(gè) master 分支,適合小團(tuán)隊(duì)(不適合我們)
2.功能分支工作流
不直接王 master 提交代碼,保證 master 干凈穩(wěn)定,團(tuán)隊(duì)完成功能開發(fā),向 master 提交合并
3.gitFlow 工作流
大型項(xiàng)目,master 和 develop 一直存在,特性開發(fā)在 feature 分支,版本發(fā)布在 release 分支,bug 修復(fù)在 hotfix 分支
4.Forkin 工作流
開源項(xiàng)目,開源項(xiàng)目維護(hù)者往中央倉(cāng)庫(kù) push 代碼,一般人 fork 到自己 github,提交代碼只有項(xiàng)目維護(hù)者同意后,才能 push 到開源項(xiàng)目中
git flow 工作流
使用 2 個(gè)分支記錄項(xiàng)目的歷史,master 分支存儲(chǔ)正式發(fā)布的歷史,develop 分支作為功能的繼承分支,或下一個(gè)版本分支
維護(hù)分支
修改 bug 分支 hotfix,master 分支拉取,修改完成合并到 master 分支,并且需要合并到 develop 分支,不然導(dǎo)致版本不一致
發(fā)布分支
發(fā)布分支從 dev 分支拉取,發(fā)布完成,銷毀