GitLab介紹
Git最初是用於Linux內核開發的版本控制工具,現在已被應用到了很多項目中。
GitLab是支持Git的源碼存取服務,直觀理解就是GitLab為Git封裝了一層用戶友好性的UI以及相關便捷操作。
軟件安裝(准備工作)
Git主要是將不用用戶電腦中的代碼版本進行控制,這就需要用戶電腦中也需要安裝Git環境,以下是windows下Git環境的安裝:
需要下載安裝兩個軟件:
需要下載安裝兩個軟件:
1、TortoiseGit,是TortoiseSVN的Git變種,主要用於圖形化顯示,windows32位的下載地址:
2、msysGit,windows下的Git版本,是TortoiseGit所必須依賴的,windows32位的下載地址:
下載完兩個軟件之后,首先安裝TortoiseGit,安裝完TortoiseGit之后先別急着用,接着安裝msysGit,安裝過程中的一些選項都可以默認!
使用教程
准備工作做好之后,以下是實驗室GitLab的使用教程:
1、登錄192.168.103.4:3000
2、把鼠標移到頁面右上角的花形圖案,然后點擊出現的”My profile“,該欄是用戶的配置信息,包括賬戶信息、SSH Keys以及代碼風格等
3、首先需要把自己本機上的SSH Key復制到GitLab,是為了今后GitLab服務器能夠無密碼訪問本機,先點擊頁面“SSH Keys”,再點擊”Add new“,
出現的頁面中”Title“為SSH key的名字,自己可以隨便取,下面講怎么生成自己電腦本機的SSH Key。
首先打開之前安裝的”Git Bash“(Git安裝后的一部分),輸入”ssh-keygen -t rsa -C "jinchao@nlsde.buaa.edu.cn"“,把里面的
jinchao@nlsde.buaa.edu.cn改成自己的注冊郵箱地址,然后一直敲回車就行,下圖是我電腦生成SSH Key的情況:

生成SSH Key之后,到自己電腦下的C:\Users\<用戶名>\.ssh文件夾下id_rsa.pub文件中的內容復制到“Key”的文本框中,點擊保存。

4、接下來講怎么創建項目,可以點擊頁面最上面的“+Project”來新建項目,以下是我新建的一個樣例:

新建完成之后點擊“Create project”,接下來會出現下面的提示:

這些命令是GitLab要求用戶在自己電腦上完成的,主要就是為Gitlab的新建項目在自己本地電腦建一個一對一綁定的文件夾,以供以后
的更新和同步。在這些命令中,“Git global setup”下的兩條命令是必須要先執行的,主要是將自己的郵箱注冊到自己本地Git中,我的截圖如下:

“Create Repository”和“Existing Git Repo?”下的命令主要就是創建目錄以及上傳文件,這些操作可以都用命令行完成,但是為了
使用的方面,我們用TortoiseGit的可視化界面來完成這些工作。
5、以下以我創建的GreenPipe項目為例,來講解怎么用TortoiseGit的可視化界面將本地文件傳到Gitlab中。
我本地電腦中的一個叫“GreenPipe”的文件夾是我之前做的項目,該文件夾也是Eclipse的一個工作目錄,即代碼可能隨時會被更改。
為了將本地的“GreenPipe”文件夾下的內容上傳到遠程GitLab中新建的GreenPipe項目下,我們首先要將該文件夾做一些git的初始化。
首先點擊進入該文件夾,點擊鼠標右鍵,選擇“Git Create repository here...”,再點擊“OK”,出現小錯誤沒事,點擊“Proceed”


文件夾中會出現一個叫.git的文件夾,該文件夾是隱藏的,需要查看隱藏文件夾才能看到,該文件夾就是git 初始化的結果,里面有很多git正常
工作需要用到的配置信息。
這些准備工作做完之后,下面講怎么將文件夾里的內容傳到GitLab中,主要包括兩個操作:“commit”和“push”。
在文件夾內點擊鼠標右鍵,選擇”Git Commit -> 'master'“,出現下面的對話框,上面的文本框里是用戶可以填的消息,即本次代碼更新的備注,
文本框的內容不能為空!!!下面的框里是可以選擇更新的代碼文件,由於第一次上傳,我選擇了全部更新,然后點擊Ok完成“commit”操作。

下圖表示commit成功,下圖左下角有Push操作,可以直接點擊“Push”將這些已經commit的文件上傳到GitLab的GreenPipe新建項目中。

點擊“Push”之后,出現了下圖,我們要將代碼文件傳到GitLab上的GreenPipe新建項目中,卻還不知道新建項目的地址,唉!

6、我們得先獲取新建的項目在GitLab上的地址,查看之前的web頁面,點擊最上面的HTTP,該地址就是該新建項目的地址。

然后點擊之前圖中的“Manage”,在出現的圖中點擊左邊”Git“選項下的“Remote”,即遠程地址,輸入Remote名(可隨意),然后
將上圖中的HTTP地址復制到URL的文本框中,點擊“應用”,再點“確定”即可。

以上步驟完成之后,再之前圖中的“Remote:”右面的文本框中輸入“master”,master是主版本的意思,可以在之后創建分支版本,截圖如下:

這些工作完成之后,現在只剩最后一步了,就是點擊上圖中的“OK”按鈕,
居然提示還要輸入Username:

然后又要輸入密碼,感覺真麻煩!

當這些上傳完成之后,我們發現GitLab網頁網上GreenPipe新建項目的頁面已悄悄地發生了變化,截圖如下:

最終,我們順利地將自己本地的代碼上傳到了GitLab上的項目中。注意,我之前曾嘗試將整個項目(包括web前端大量js代碼,以及各種jar包,總共50M),
結果上傳失敗,所以大家上傳代碼的時候注意代碼量的大小,由於GitLab跑在Ubuntu虛擬機上,可能會吃不消!
7、以上的操作已經能夠實現將自己本地代碼上傳到GitLab中,下面講一下Git的其他一些操作。
Git作為版本控制工具當然能夠實現將服務器端的代碼Pull(提取)到自己本地電腦。在文件夾中點擊右鍵,會發現有一個“Git Sync”的選項,
該操作可以查看自己本地項目代碼版本與GitLab中項目代碼的不一致性,可以通過Pull(提取)操作將本地代碼與GitLab中項目版本同步。

我的介紹就到這里了,我對Git的了解也不是很多,GitLab的其他一些特性和使用技巧需要靠大家通過使用來發現了!
另:
很奇怪,將project的權限設置成public之后竟然push上傳出錯(不再提示輸入用戶名和密碼),將public取消后,又對了,即需要用戶名和密碼了,難道公共的項目不允許修改???