版本管理工具Git,你用對了了嗎?這一招絕對好用

對于開發(fā)人員來說,一個團隊一起開發(fā),那么肯定會涉及到團隊協(xié)作開發(fā),這個時候版本管理工具就起了很大的作用,今天我們就來說說超強版本管理工具git應(yīng)該怎么用才最好,怎么用能最大程度保證master分支代碼的干凈。

首先,Git是一個開源的分布式的版本控制系統(tǒng),作為代碼的版本控制,可以自己搭建gitlab服務(wù)器,一般公司都有自己的gitlab服務(wù)器,開發(fā)人員的代碼最終都會提交到這個服務(wù)器的倉庫中,也就是我們常說的遠程倉庫。當(dāng)然,如果是自己學(xué)習(xí),可以直接使用github服務(wù)器倉庫作為遠程倉庫,但是github是開源的,所以代碼也是公開的,除非花錢買private倉庫。

一、常用的git命令

git clone git@gitlab.com ——克隆遠程倉庫項目代碼

git checkout -b new-branch ——創(chuàng)建一個new-branch分支并切換至new-branch分支

git add file ——把file添加進版本管理

git commit -m "備注" ——提交修改的代碼

git checkout master ——切換至master分支

git merge new-branch ——合并分支new-branch到當(dāng)前分支

git push origin master ——本地master分支變更推到遠程master

git pull origin master ——拉取遠程master分支并合并至當(dāng)前分支

git pull origin --tags ——把遠程tag更新至本地

git tag -a tag-name -m "備注" ——創(chuàng)建一個tag名為tag-name

git push origin tag-name ——把tag-name推到遠程倉庫

git branch ——列出本地所有分支

git branch -d new-branch ——刪除本地分支new-branch

想了一下,平時最常用的也就這些命令了,根據(jù)不同的使用方式,可能每個人的常見使用命令不同,小編自己大概就使用這些,有些用的很少的就沒有列出來了。下面我們看看一般情況下怎么使用。

二、一般情況使用

加入一個項目組,正式開始開發(fā),一般有以下幾個步驟:

1、git clone git@gitlab.com ——使用git clone克隆遠程項目到本地,克隆到本地后只有一個分支master

2、git checkout -b test ——本地創(chuàng)建一個test分支并為測試環(huán)境代碼分支并切換至test,這里根據(jù)原項目倉庫的測試環(huán)境代碼分支命名,有些使用dev,這里假定原項目測試環(huán)境代碼分支為test,測試test分支代碼跟master分支代碼相同

3、git pull origin test ——拉取遠程test分支代碼并合并到本地test分支,經(jīng)過本步操作,本地test分支就是測試環(huán)境代碼了,以后開發(fā)分支的代碼都要先合并到test分支推到遠程測試環(huán)境經(jīng)過測試后才能進行線上部署

4、git checkout master ——再切回master分支

5、git checkout -b develop-branch ——創(chuàng)建開發(fā)分支develop-branch并切換至develop-branch分支,這一步就是要進入開發(fā)了,一個需求一個開發(fā)分支,直到功能開發(fā)完畢

6、git add new_file.php ——把開發(fā)過程中新建的文件添加進版本管理

7、git commit -m '備注' ——提交所有變更

8、git checkout test ——切換至測試分支

9、git merge develop-branch ——合并新開發(fā)的變更到test分支

10、git push origin test ——test推到遠程分支,此時測試環(huán)境可以拉取test分支代碼,然后進行測試

11、git checkout master && git merge develop-branch ——測試通過后,切換到master分支然后合并develop-branch到master分支

12、git push origin master ——master分支推到遠程倉庫,進行后續(xù)的部署上線

三、推薦方式、tag的使用

master分支是部署上線的代碼分支,是一個很重的分支,因此不能隨便就把代碼合并進去,必須經(jīng)過驗證,確保代碼沒有問題后才能合進master分支。下面我們使用tag代替master進行上線部署:

截止發(fā)布到測試環(huán)境中及之前,與上面(二)中的過程是一樣的,只是在后面上線時有所不同,我們接著上面的10、git push origin test 之后開始:

11、git pull origin --tags ——拉取遠程tag到本地,最新的tag拉取下來

12、git checkout master ——切換至master分支

13、git merge develop-branch ——合并新開發(fā)的代碼分支到master,注意不要推到遠程master分支去

14、git tag -a project-v-1.0.1-username-201910251425 -m '第一次需求' ——創(chuàng)建一個tag,這里注意了,tag名字最好有規(guī)律一點,可以自定義版本號,一直遞增,每個開發(fā)人員使用不同的username,很好的標識了是那個開發(fā)人員的tag,再寫上日期就很清晰了;這里可以自己體會一下,仁者見仁,智者見智。

15、git push origin project-v-1.0.1-username-201910251425 ——把新創(chuàng)建的tag推向遠程,千萬不要把master推到遠程去

接下來,我們就可以通過指定的tag進行上線部署,線上部署完成后,要經(jīng)過線上驗證:(1)如果功能正常,這時候就可以把master分支推到遠程去了,別人拉取master代碼也是經(jīng)過線上驗證的。(2)如果功能異常,線上代碼回滾,這時候也不用操心master分支代碼會被他人拉取,因為沒有推到遠程,所以沒有任何影響。那代碼回滾后需要注意的是,為了避免混淆,回滾的那個tag需要刪除掉,本地master也reset到之前的tag后,開發(fā)分支重新修改提交測試后要重新創(chuàng)建tag推到遠程去,再進行上面的步驟即可。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容