開發人員必備的Gitlab技能

前面咱們已經搭建好了Gitlab服務,也講到了gitlab一些安全設置,但做爲用戶,該如何來使用gitlab呢?請看下文。git

一、綁定hosts,使用notepad打開C:\Windows\System32\drivers\etc\hosts,綁定gitlab服務器的IP地址,映射成域名,方便記憶並訪問,如圖1所示。github

192.168.59.250 gitlab.demo.comwindows


c7f5f2451dd74ffd861394f324904590

圖1安全

完成上述hosts設置後,其實咱們就能夠經過訪問http://gitlab.demo.com來註冊gitlab帳號了。註冊帳號最好用公司郵箱,如公司給我分配的郵箱是 firefly@demo.com,我將使用該郵箱來註冊gitlab帳號,而後由配置管理員對 firefly@demo.com 帳號分配相關倉庫權限。服務器

管理員分配了相關組或者倉庫權限後,此時咱們能夠用本身的帳號登陸 http://gitlab.demo.com 查看相項目內容了。那是否是到此gitlab的操做就講完了呢?固然不是,若是想將項目克隆到本地,並在本地修改項目文件,最後又提交到gitlab服務器,對於這種操做,咱們要藉助Git和TortoiseGit。網絡

二、安裝Git以及GUI客戶端TortoiseGit和中文語言包。Git下載頁在Github上:https://github.com/git-for-windows/git/releasesssh

GUI Clients 選擇TortoiseGit,對應下載連接以下:ide

https://download.tortoisegit.org/tgit/2.9.0.0/TortoiseGit-2.9.0.0-64bit.msigitlab

https://download.tortoisegit.org/tgit/2.9.0.0/TortoiseGit-LanguagePack-2.9.0.0-64bit-zh_CN.msiui

下載完成後,按一、二、3順序完成安裝,如圖2所示,安裝過程當中相關設置均按默認便可。

4090b412b40c43f9a3647a208f63df9c

圖2

三、成功安裝後,鼠標右鍵如圖3所示。

1bbe6965435e49d4bc4d3656a0a7bbeb

圖3

點擊TortoiseGit --> Setttings,可設置語言爲中文,點擊「應用」,如圖4所示。

f5443ff09e9847d3afd0b22b728c03eb

圖4

而後,在「Icon Overlays「,選擇Shell Extended,如圖5,這樣設置的目的是當git倉庫中有文件發生變動時,文件圖標狀態也跟着變化,效果如圖6所示。

a6ae0c99a5114ecfb6a54c67c417360d

圖5

f79a0742679d4f01991c3fd08f45b806

圖6

四、接下來再對Git作全局設置,如下命令用Git Bash完成,如圖7所示。

a94bd699fb274a84a6c6980526657a93

圖7

設置用戶名和郵箱地址(注意用本身註冊gitlab時的郵箱)

git config --global user.name "firefly"

git config --global user.email firefly@demo.com

將color.ui 設置爲auto 可讓命令的輸出擁有更高的可讀性。

git config --global color.ui auto

將credential.helper設置爲store,能夠存儲用戶以及密碼,避免每次提交或拉取時要手動輸入用戶名和密碼。

git config --global credential.helper store

上述git config命令將會在用戶家目錄下(Windows是C:\Users\xusers,Linux是~/.gitconfig)下生成.gitconfig文件,內容以下。

cat .gitconfig

[user]

name = firefly

email = firefly@demo.com

[credential]

helper = store

[color]

ui = auto

若是想再更改這些信息,能夠直接編輯.gitconfig文件,如圖8所示。這裏設置的姓名和郵箱地址會用在Git 的提交日誌中。因爲在GitHub 上公開倉庫時,這裏的姓名和郵箱地址也會隨着提交日誌一同被公開,因此請不要使用不便公開的隱私信息。

d5bd9824be8342ef9892c7bb22cede33

圖8

完成上述設置後,咱們就可使用HTTP方式操做gitlab的倉庫了,先複製項目的HTTP的克隆地址,如圖9所示。

6a753aa4459544c9a9d67120f7573e73

圖9

使用TortoiseGit來clone倉庫,如圖10所示,選擇「Git 克隆"。

d76a3ff52e3542aba36c09554a2f0074

圖10

粘貼板會自動將要克隆的地址填入,如圖11所示。

40de8f9ae9c2421eab30498af7e4cee0

圖11

點擊」肯定「,會提示輸入用戶名和密碼,如圖12所示。

d9817be3bc41403dbbdb0e3403302592

圖12

密碼輸入正確後,將完成項目克隆到本地的操做,如圖13所示。

e1117b66c85f4db9883c5d0f41efac41

圖13

重要說明:若是在上述操做過程當中輸錯了用戶名或密碼,點擊」肯定「時會提示用戶名或密碼不正確,但不會再彈出輸入用戶名密碼的對話框,此時就獲得」控制面板「-->」用戶帳戶"-->"憑據管理"-->"管理Windows憑據",刪除對應的憑據便可,如圖14所示。

99fda1a6-44e0-4821-9316-3a92ad9de938

圖14

f897873910324445b2c3048b9192120f

圖15

commit+push操做對應SVN的commit。由於Git的commit是先提交到本地倉庫,而後再push到gitlab服務器。即git的提交修改操做均保存在本地,不須要連gitlab服務器也能夠查看歷史修改記錄。而SVN不行,如圖16所示。

6fd191bdd4d44ae38b79bcc6f73f03e5

圖16

五、完成上述操做後,就已基本知足咱們平常工做需求了。但做爲一名開發人員,若是不會SSH訪問git倉庫的話,下次要是被新入職客戶端MM請教會不會就錯失了告別單身的機會(哈哈),正所謂技多不壓身。

使用ssh-keygen命令生成密鑰文件,id_rsa文件是私鑰,id_rsa.pub是公鑰。

ssh-keygen -t rsa -C firefly@demo.com
使用上面命令,直接回車,完成密鑰生成,如圖17所示。

圖17
複製id_rsa.pub文件中內容並添加到git帳戶firefly@demo.com用戶下,如圖18所示。

圖18
使用firefly帳戶登陸網頁版gitlab服務,在Settings --- SSH Keys中添加id_rsa.pub中的公開密鑰,而後點擊「Add key」,如圖19所示。

圖19

因爲gitlab服務器ssh端口不是使用默認的22,而是6688,咱們還須要建立C:\Users\tgh\.ssh\config文件(若是有多臺gitlab服務器,都可以在config文件中添加),如圖20所示。

cat >>.ssh/config <<EOF

host gitlab.demo.com

hostname 192.168.59.250

port 6688

EOF

9307856397ac49ce83a18fa66f7982e1

圖20

好啦,咱們可使用ssh方式來克隆項目了,如圖21所示,先複製要克隆的項目地地址。

5948f588a2a046f5a188efbbec1788b7

圖21

注意,使用ssh方式克隆項止,URL是以git@開頭,如圖22所示

c58686fa6801443f80c2b1757a2439e5

圖22

點擊」肯定「,如圖23所示,我x,又報錯啦,捂臉好尷尬。

263a216d8915430da9a9095cdcda3162

圖23

可千萬別被小小的報錯給嚇到,咱們只須要再設置一下TortoiseGit的網絡,更改一下SSH客戶端,如圖24爲修改前路徑,圖25爲修改後路徑,即咱們要用Git自帶的SSH客戶端來解決這個報錯。

5961691e441a4a699025738bda5fe7d2

圖24

b3912205e01b4973bcde1d1910681721

圖25

完成設置後,咱們再來嘗試克隆一下,如圖26,圖27所示,順利完成。

0e660e5cbf3c40ac84dfd8562a31060f

圖26

a05df00e000f462cb0c34d881bfbcb75

圖27

碰到問題不迴避,這樣,咱們離大神和女神都更近了一步^_^,加油。

相關文章
相關標籤/搜索