如何更好地利用git lab組織團隊開發

Ihc_Gnahz發表於2018-05-15

前言

大多開發的小夥伴對git並不陌生,利用git可以進行團隊協作開發,並且可以記錄程式碼的迭代歷史,出問題時容易回溯,諸多優點不一一列舉。

這篇文章預設您是懂得git的基本知識的,旨在幫助您更有效率的使用gitlab。

正文

首先不論團隊規模,master分支永遠是與線上的程式碼同步,這是毋庸置疑的。

專案開始前,團隊leader建立好master分支,其他成員拉下master分支程式碼,此時所有人都有了修改程式碼的許可權。

我們暫且不建立dev分支,預設程式碼在master上進行調整

小明是團隊中的一員,他接到任務,需要為專案增加一項功能,該功能名稱叫run,此時使用如下命令:

git checkout -b run
複製程式碼
該命令會在本地基於master的程式碼新建一個名為run的分支,程式碼與master一致,之後小明便可以在該分支進行開發,開發完成後使用如下命令:
git add <file>
git commit -m "add run"
複製程式碼
該命令將檔案加入暫存區,之後提交到本地倉庫

此時,小明發現部分程式碼存在bug,因此需要進一步修改,修改完成後使用如下命令:

git commit -a --amend
複製程式碼
該命令會將已經tracked的檔案追加到上一次commit

到此,小明已經完全完成了run的功能,然而小明發現master程式碼已經有更新,因此小明使用如下命令

git fetch origin master
git rebase origin/master(git merge origin/master)
複製程式碼
該命令將遠端倉庫程式碼拉取至本地,並且將master的修改rebase至本次修改之前,這樣的好處是在本地清理乾淨merge的操作,讓本次修改基於線上(ps:此處作者認為rebase優於merge)

完成後,小明使用如下命令:

git push origin run
複製程式碼
該命令將本地run分支推送至遠端倉庫(ps:可能會有一些不成功提示,根據提示完成操作即可)

推送完成後,小明在gitlab控制檯上新建一個merge request,向leader發起合併程式碼至master分支的請求,leader對程式碼進行review後,通過控制檯將run分支合併至master分支。至此小明完成本次開發

小明和其他成員可再次使用如下命令將程式碼同步至自己的開發倉庫:

git fetch origin master
git rebase origin/master(git merge origin/master)
複製程式碼

總結

該文章僅僅代表作者的一些建議,因此或許存在一些問題和瑕疵,歡迎讀者指出和提問討論,謝謝!

相關文章