快速上手git gitlab協同合作

2021-07-07 05:36:10 字數 3209 閱讀 3328

簡單記錄,整理。

為方便大家快速上手git,並使用gitlab協同合作,特編寫此手冊,手冊內容不會太豐富與深入。

主要包含如下內容:

git 使用教程

1.1 安裝

1.2 常用命令

1.3 版本控制

1.4 分支與tag

gitlab 使用教程

2.1 介面簡介

2.2 常用功能介紹

2.3 注意事項

多人協作流程與規範

3.1 永久與臨時分支

3.2 工作流圖

3.3 規範

code review

4.1 為什麼要有code review

4.2 如何進行?

參考資料

後續會加入ci,自動部署等。

建議安裝最新版本,及1.7以上。

官方安裝教程:安裝教程

在linux和mac下直接用終端操作即可;windows下需要右鍵開啟 「git bash」進行操作。

使用公司的gitlab庫,需要忽略驗證證書合法性

a. 轉殖**庫至本地

位址在gitlab.xsjcs.cn專案中獲得,請選擇https 位址

git clone

b. 修改檔案並提交

git add file-name

git commit -m "注釋"

注釋一定要詳細,不能是」test」,」update」之類的。並盡量採用英文說明。

c. 推送到遠端分支,預設是所有

git push

d. 推送至主分支

git push origin master

更多命令請參考:

git命用命令

git命令速查

通常我們在本地提交**庫是git add && git commit 命令,在需要提交到遠端時才使用git push 。

因此git 的版本控制分為2塊。本地和遠端。

在本地命令操作中,還可以採用git reset head 來撤銷提交,以及git checkout 來恢復檔案。

因此git 資料夾存在三個區域:

實際目錄:實際修改的檔案。

待提交區:暫存準備提交的內容,提交之後被清空。(也叫做index區)

已提交區:提交到本地git版本庫的內容,有版本號。

對這三個區域的操作都可以在本地離線完成。

同時可以通過git status檢視檔案狀態

檔案總共四種狀態:

與git repository一致

與git repository不一致,已快取

與git repository不一致,未快取

還未新增到git repository

通常我們在本地操作完成後,會提交到遠端的自己的分支,或開發分支。因此就涉及分支的知識。

分支是用來將特性開發分開來的,在建立倉庫時,master是預設主幹。通常我們還會建立乙個開發分支」develop」,以及乙個測試分支」testing」。每個開發人員需要開發新功能時,在本地再建立乙個自己的分支」feature_a」,然後再將分支提交測試或開發,由相關人員測試並審核通過後,merge到主幹。

建立乙個feature_a 的分支,並切換到該分支:

git branch feature_a

git checkout feature_a

切換回主:

git checkout master

檢視本地分支列表:

git branch -a

刪除分支:

git branch -d feature_a

合併分支

合併分支前通常需要使用git diff檢視提交的版本差異。在gitlab介面有diff介面可以幫助我們檢視。如果沒有異常可以配置自動合併,如果自動合併報衝突時,需要手動操作。

git add 標記相關資訊

git merge 合併其它分支到當前分支,合併前需要先確認當前分支。

gitlab介面比較簡潔,目前公司配置的gitlab不支援ssh方式。只能採用http(s)進行。但使用者註冊後,需要配置個人資訊,特別是頭像。建議都配置。

貌似這個沒啥好寫的,特別個人頭像即可。

建立groups : 通常我們會給乙個專案建立乙個組。比如:網管中心、xoyobox、運維小組開發工具。

建立user: 目前開放註冊,後續需要郵件申請。

將使用者加入組:在建立組後,可以選擇將不同的使用者加入組進行協同開發。

建立project: 專案可以選擇歸屬那個組,在建立時,也可以選擇匯入。建立後,初始化資訊註冊選擇http(s)協議。

由於公司配置https 證書沒有購買,當前還沒有申請免費的key,所以需要配置忽略驗證證書合法性:

更多使用可參考:如何使用gitlab

為避免2個或多個人同時修改乙個功能,或開發乙個新的feature,需要有嚴格的規範或流程進行約束。

因此我們需要建立永久分支與臨時分支。

永久分支:master develop testing

臨時分支:在開發或發布時建立,使用一段時間後刪除。

master: 主幹分支,線上發布的穩定版本。以偶數為版本號。

develop:開發分支,將測試完成,或不需要測試的分支一起merge至master。發布時,以奇數為版本號。

testing:測試分支,供前期測試使用的分支,可以不加版本號。

幾個重要的說明:

feature

release

hotfix見圖

約定:master分支中的任何版本都可以立即部署

每次master變更都來自其它分支的master合併操作

對master修改必須要有review

不允許存在奇數版本

不覺明厲

建議在gitlab介面進行

提交**時需要註冊分支及版本號

使用本地git flow 進行合併操作

github-flow

git_gitlab

ibatis 快速上手

簡介 例子 現在我們我們通過乙個簡單的案例,了解如何通過ibatis解決資料訪問問題。現在有有乙個資料庫,資料庫裡面有一張人員資訊表 需求是這樣 通過乙個web應用程式顯示人員資訊表裡面的資訊,並且可以新增 修改 刪除人員記錄 乙個並不複雜的案例,但是它覆蓋所有開發首先要學習的內容。第1步 the ...

Pro C快速上手

條件 winxp vc 6 裝在c program files microsoft visual studio vc98 oracle 9 裝在e oracle ora90 步驟 1 dos視窗設定環境變數,預編譯 oralce 給的關於pro c 例子 2 設定vc 環境 3 編譯執行 c程式。具...

Apache James快速上手

2,配置 2.1,環境配置 apache james執行需要jvm,保證所在主機安裝jdk即可 2.2,埠配置 apache james 使用到的埠包括 pop3埠 110 smtp埠 25 2.3,啟動應用 配置完畢james後,就可以啟動了,啟動命令很簡單,只需要執行bin run.sh即可 也...