master是主干,開發在分支中進行,開發完成后將分支(branch)的代碼合并到master,測試master后再打tag。簡單起見只需保留一個主干和一個分支,如果需要臨時開發一個不確定且耗時的功能(例如微唐項目中的藍牙功能)則臨時從branch中拉出一個feature分支修改后合并到branch中并刪除feature分支。

1、建立項目&添加協作者



2、初始化項目
執行下面命令
cd existing_folder
git init
git remote add origin git@255.255.255.255:XXXXXX/XXXXXX.git
git add .
git commit -m ‘初始化項目’
git push -u origin master
3、建立分支
按照下圖所示建立分支分支名稱約束為'branch/XXX'(例如“branch/0111”),“create from”輸入 master


4、開發
4.1、首先創建一個項目名命名的文件夾,將代碼clone到此目錄中,并選擇代碼
git clone git@255.255.255.255:XXXXXX/XXXXXX.git
然后定位到clone的項目文件夾
cd XXXXXX
最后選擇checkout主干代碼還是分支代碼,因為是要開發所以需要checkout分支代碼,如果發布版本需要checkout主干代碼
//主干
git checkout master
//分支
git checkout branch/0111
4.2、開發后合并分支代碼到主干
定位到clone的項目文件夾
cd XXXXXX
項目切換owner到master,然后執行merge,第二行中的“--no-ff”一定要添加,否則不顯示合并的log
git checkout master
git merge --no-ff branch/0111 -m 'xxx'//顯示Already up-to-date.說明合并成功
git push origin master//上傳主干
-------------------------------------------------------------------------
-
下面這個是內部使用的版本
-
-------------------------------------------------------------------------
1、建立項目&添加協作者



2、初始化項目
執行下面命令
cd existing_folder
git init
git remote add origin git@255.255.255.255:XXXXXX/XXXXXX.git
git add .
git commit -m ‘初始化項目’
git push -u origin master
3、建立分支
3.1、主分支,每個項目的develop分支為開發分支,master分支為主干分支
按照下圖所示建立分支分支名稱約束為'develop',“create from”輸入 master


3.2、開發人員分支
按照上面所示方法建立開發者分支,分支名稱約束為develop_name 【例如“develop_ly”或者“develop_wss”,后面加上開發者自己的標示】,“create from”輸入 develop,流程與上面所說一樣
4、開發
4.1、首先創建一個項目名命名的文件夾,將代碼clone到此目錄中,并選擇代碼
git clone git@255.255.255.255:XXXXXX/XXXXXX.git
然后定位到clone的項目文件夾
cd XXXXXX
最后選擇checkout master和develop分支代碼,創建開發者分支代碼(develop_name),開發分支代碼(develop)用來打包測試,如果測試成功則發布版本時需要checkout master代碼
//主干
git checkout master
//開發分支
git checkout develop
//創建開發者自身分支
git checkout -b develop_ly
4.2、開發以及提交
獲取開發者分支后正常開發以及提交,開發功能結束后,發起一個pull request請求合并,經過審核將代碼合并到分支代碼(develop)中,測試穩定通過后合并到主干代碼(master)中
4.3、開發后合并開發者分支(develop_name)代碼到開發分支(develop)
定位到clone的項目文件夾
cd XXXXXX
項目切換develop_name到develop,然后執行merge,第二行中的“--no-ff”一定要添加,否則不顯示合并的log
git checkout develop
git merge --no-ff develop_name -m 'xxx'//顯示Already up-to-date.說明合并成功
git push origin develop//上傳分支
4.4、最后測試穩定后將代碼合并到主干,下面這一步由代碼負責人(身份為master的管理者操作)
git checkout master
git merge --no-ff develop -m 'xxx'//顯示Already up-to-date.說明合并成功
git push origin master//上傳主干
5 參考資料
git介紹
http://rogerdudler.github.io/git-guide/index.zh.html