gitlab创建分支上传文件_Gitlab管理和使用基本教程
一、注冊并設置Gitlab個人信息
(一)注冊Gitlab
登錄Gitlab站點,注冊賬戶,設置基本個人信息。按提示操作即可。
(二)配置ssh連接信息
1.創建SSH密鑰
通過下面的命令生成密鑰,請將命令中的YOUR_EMAIL@YOUREMAIL.COM替換為你注冊Gitlab時用的Email地址。
ssh-keygen?-t?rsa?-C?"YOUR_EMAIL@YOUREMAIL.COM"
在SSH生成過程中會出現以下信息,按屏幕的提示操作即可:
注意:Enter?passphrase?(empty?for?no?passphrase)?:時,可以直接按兩次回車鍵輸入一個空的passphrase;也可以選擇輸入一個passphrase?口令,如果此時你輸入了一個passphrase,請牢記,之后每次提交時都需要輸入這個口令來確認。
2.獲取公鑰內容
SSH密鑰生成結束后,根據提示信息找到SSH目錄(通常ssh密鑰保存路徑均為~/.ssh目錄),會看到私鑰id_rsa和公鑰id_rsa.pub這兩個文件,不要把私鑰文件id_rsa的信息透露給任何人。
用記事本打開id_rsa.pub,復制里面的所有內容以備下一步使用。
3.將密鑰中的公鑰添加到Gitlab
登錄Gitlab的web站點,進入個人資料設置-?SSH?Keys頁面,將第2步所獲得的內容粘貼在文本框key內,并填寫title以便記憶,而后保存。
二、代碼管理
除克隆、修改、提交代碼外,其它merge、建立分支等操作都在Gitlab網頁端進行。
所有分支中,master分支為主干分支,此分支的代碼不允許直接修改,只能由其它分支(一般只由develop分支)發出merge請求,經項目管理員代碼審查通過后合并代碼,普通開發者無權執行push、merge等操作,確保此分支任何時候、任何tag處導出的項目代碼都是穩定可正常運行的代碼;develop分支為開發分支,可以接受由其它分支發起的merge請求,同樣只能經項目管理員代碼審查通過后予以合并。
(一)新建項目
對于獨自承擔的不依賴系統的任務,如各種應用類app,可以在web端建立自己的項目,便于代碼控制。
而后取得項目地址,如“:root/uboot.git”(有的服務器上顯示為“ssh://it@lsyer-ThinkPad-E420:root/uboot.git”,兩者相同,因為git會默認使用ssh協議),并在pc端初始化并上傳代碼。
$?git?clone:root/uboot.git
$?cd?uboot
——(在此文件夾下添加初始代碼)——
$?git?add?.
$?git?commit?-m?“Initial”
$?git?push?-u?origin?master
(二)建立自己的開發分支
進入Gitlab項目主界面后,在網頁端新建分支,作為自己開發的專屬分支,之后個人所有開發都在此分支進行。
其中,分支命名建議以develop_XXX形式命名(xxx為自己的代號或姓名簡拼),來源分支初始時一般從master分支而來。
以后的開發過程中,若需臨時增加分支,按照以上操作,酌情執行。
(三)克隆分支代碼
基本命令結構如下:
$?git?clone?-b??[remote?repository?address]
如測試服務器boot項目的git地址為“it@lsyer-ThinkPad-E420:root/uboot.git”,分支名為“develop_lsyer”,則此命令為:
$?git?clone?-b?develop_lsyergit@lsyer-ThinkPad-E420:root/uboot.git
進入代碼目錄,查看分支,確認下載成功且當前分支為所需分支。執行結果如大致如圖:
(四)提交已修改的代碼
git代碼庫是分布存儲的,分為本地庫和遠端庫。執行push操作之前,不影響遠端庫;commit操作只修改本地庫。因此,本地修改代碼后,若要上傳至服務器需三個操作:
$?git?add?.
$?git?commit?-am?“update?comments”
$?git?push?origin?develop_lsyer:develop_lsyer
其中,若本地修改時增加了文件,則需要執行第一條命令,“.”代表當前目錄下所有文件,也可指定某文件,如“git?add?theAddFile.c”;
第二條命令將修改提交到本地庫,am參數指明本次修改的注釋,一般只用英文;
第三條命令將本地代碼提交到遠端服務器,origin表示遠端默認服務器,在“git?clone”時已指明,第一個develop_lsyer表示本地的分支名,第二個develop_lsyer表示遠端分支名,整條命令表示將本地的develop_lsyer分支代碼修改情況,merge到遠端的develop_lsyer分支。
(五)合并代碼到主分支
此步驟在Gitlab網頁端執行。
自己的代碼修改調試通過,需要適時合并到主干分支,則需要發起merge請求。在發起merge請求前,先通過步驟(三)將已測試通過的代碼push到遠端自己所屬分支,而后打開Gitlab站點執行操作。如圖。
填寫相關信息,需要注意最后三項,可以看到是合并方向,是從Source?branch的“develop_lsyer”到Target?branch的“master”分支,且根據需要選擇是否合并后刪除本分支。一般臨時性分支可以選擇合并后自動刪除,個人工作分支一般不選。最后點擊提交請求即可。
(六)同步遠端最新代碼
$?git?fetch?origin?master:tmp
$?git?diff?tmp
$?git?merge?tmp
$?git?branch?-d?tmp
第一條表示從origin處獲取master的代碼,存在本地的tmp分支中;
第二句表示將tmp分支中的代碼與本地當前分支的代碼進行對比,查看異同,等同于“git?diff?tmp?develop_lsyer”,顯示內容中“+”表示命令中后一分支多出的部分、“-”表示命令中后一分支少的部分;
第三句表示將tmp分支合并到當前分支;
第四句表示刪除tmp分支。
三、Gitlab基本管理
(一)權限控制
從Gitlab的web端完成,使用成員分組和保護分支功能實現。
在項目主頁的設置中,點擊進入“Protected?Branches”配置頁面:
進入設置頁面,如下:
從上圖可見,上半部分是新增保護分支,下面是已處于保護狀態的分支列表。其中,master分支是項目的默認分支,且已處于保護狀態,merge和push操作只有Masters組的成員才能進行,可以根據需要直接修改。
(二)處理merge請求
一旦有成員發起了merge請求,Merge?Requests處會顯示尚未處理的請求數量,不為0時可進入頁面進行處理。
之后點擊某個要處理的請求,可以看到具體的修改信息,如Commits和Changes,以及發起請求的來源分支、成員、備注等信息。擁有Merge權限的成員審查后,選擇通過、修改或關閉。
總結
以上是生活随笔為你收集整理的gitlab创建分支上传文件_Gitlab管理和使用基本教程的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 吃完减肥药后肚子变得又大又硬,怎么办
- 下一篇: m苹果放n篮子_egg appple千万