首先git是什麼?
Git是一款免費、開源的分佈式版本控制系統,用於敏捷高效地處理任何或小或大的項目。Git的讀音爲/gɪt/。
Git是一個開源的分佈式版本控制系統,能夠有效、高速的處理從很小到很是大的項目版本管理。Git 是 Linus Torvalds 爲了幫助管理 Linux 內核開發而開發的一個開放源碼的版本控制軟件。
----------摘自百度
其次什麼是gitlab?
GitLab 是一個用於倉庫管理系統的開源項目,使用
Git做爲代碼管理工具,並在此基礎上搭建起來的web服務。安裝方法是參考GitLab在GitHub上的Wiki頁面。
----------摘自百度
gitlab如何作項目管理?
首先團隊須要有個領導者master,由master建立好項目,建立好項目,團隊的成員就能夠clone下來;
若是是以前,團隊的成員就直接在主線上啪啪啪的擼碼,提交提交在提交;
可是如今不同了,master能夠給主線設置權限,其餘人都不能夠提交到主線上,團隊的成員根據功能劃分建立相應的分支,沒完成前提交本地,功能模塊完成後,提交到遠程倉庫,而且是提交到遠程倉庫的分支;提交後須要多作一步,登陸到gitlab網站,提交一個合併申請,提交給master。master就能夠在線review你的代碼,若是經過隊員的代碼就能夠合併到主線上了。那麼其餘隊員也能夠拉取最新的代碼,而且合併到本身的支線上。
一開始隊員確定各類用不慣,怨聲載道,可是對是項目管理真的幫助特別大;能夠監控項目進度,把控時間,提高代碼質量。
另外,開發者應該多用分支,不要所有在一個分支,而且應該常常提交審覈,一次性提交太多代碼,不利於master的審覈。
-----------------------華麗的分割線----------------------
做爲隊員的我該咋個作呢;
首先 克隆 git clone project;
根據本身的模塊,建立分支,git branch module1
切換到分支 git checkout module1
---瘋狂開發中.....
---開始完成.........
提交你的代碼
git add <filename> //添加新增的代碼
git add -u <filename> //添加修改的代碼
git commit -m "測試" //提交代碼,並附上信息
git push origin module1 //推送到遠程倉庫的分支
網站上 新建一個merge請求等待master審覈;
附:
當開發過程當中master忽然修改了架構而且更新到了主線上,直接影響到你的擼碼,就須要更新主線代碼併合併到當前開發的支線;
git checkout master;//切換到主線;
若是切換出錯,說有修改的內容沒有合併之類的,先隱藏本身的更改;
git stash;
在切換到主線,拉取最新的代碼到主線;
git pull;
切換到當前的支線,合併主線的代碼到如今開發的支線上去;
git checkout module1;
git merge origin/master;//合併主線的代碼到分支
------有的時候老大沒空,你的merge 請求 得不到及時的響應,可是其餘的小夥伴又須要你寫的東西,其餘小夥伴能夠直接merge 你pull 的分支
git branch -a;//能夠看到全部的分支,包括遠程倉庫的
git merge origin/<小夥伴的branch>; //合併你須要的小夥伴的分支到你的分支(merge前必須小夥伴提交)
若是有隱藏,就取消本身的隱藏;
git stash clear;
----------------------------以上我的理解不對忘海涵。