|
懷素的專欄
代碼管理一直用svn,Git的分支管理認(rèn)為是最好的,嘗試用用。
一.GitLab簡(jiǎn)介
GitLab 是一個(gè)用于倉(cāng)庫(kù)管理系統(tǒng)的開(kāi)源項(xiàng)目。使用Git作為代碼管理工具,并在此基礎(chǔ)上搭建起來(lái)的web服務(wù)。
可通過(guò)Web界面進(jìn)行訪問(wèn)公開(kāi)的或者私人項(xiàng)目。它擁有與Github類似的功能,能夠?yàn)g覽源代碼,管理缺陷和注釋??梢怨芾韴F(tuán)隊(duì)對(duì)倉(cāng)庫(kù)的訪問(wèn),它非常易于瀏覽提交過(guò)的版本并提供一個(gè)文件歷史庫(kù)。團(tuán)隊(duì)成員可以利用內(nèi)置的簡(jiǎn)單聊天程序(Wall)進(jìn)行交流。它還提供一個(gè)代碼片段收集功能可以輕松實(shí)現(xiàn)代碼復(fù)用。
下載安裝 https:///stack/gitlab/installer
二.GitLab 的配置與使用
1.創(chuàng)建新項(xiàng)目(web)
1-1.登錄gitlab網(wǎng)址成功后,點(diǎn)擊右側(cè)導(dǎo)航條上的 “+” 就可以進(jìn)入創(chuàng)建項(xiàng)目的頁(yè)面

1-2.在創(chuàng)建工程的頁(yè)面,按照要求填寫項(xiàng)目的名稱和可見(jiàn)性等信息。
Project path:項(xiàng)目的路徑,一般可以認(rèn)為是項(xiàng)目的名稱
Import prject from:從哪導(dǎo)入項(xiàng)目,提供Github/Bitbucket等幾個(gè)選項(xiàng)
Description(項(xiàng)目的描述):可選項(xiàng),對(duì)項(xiàng)目的簡(jiǎn)單描述
Visibility Level(項(xiàng)目可見(jiàn)級(jí)別):提供Private(私有的,只有你自己或者組內(nèi)的成員能訪問(wèn))/Internal(所有登錄的用戶)/Public(公開(kāi)的,所有人都可以訪問(wèn))三種選項(xiàng)。

2.添加和配置SSH公鑰:
2-1.SSH(Secure Shell)是一種安全協(xié)議,在你的電腦與GitLab服務(wù)器進(jìn)行通信時(shí),我們使用SSH密鑰(SSH Keys)認(rèn)證的方式來(lái)保證通信安全。
2-2.創(chuàng)建 SSH密鑰,并將密鑰中的公鑰添加到GitLab,以便我們通過(guò)SSH協(xié)議來(lái)訪問(wèn)Git倉(cāng)庫(kù)。
SSH 密鑰的創(chuàng)建需要在終端(命令行)環(huán)境下進(jìn)行,我們首先進(jìn)入命令行環(huán)境。通常在OS X和Linux平臺(tái)下我們使用終端工具(Terminal),在Windows平臺(tái)中,可以使用Git Bash工具,git客戶端安裝目錄下git-bash.exe文件
A:進(jìn)入SSH目錄:cd ~/.ssh
(1)如果還沒(méi)有 ~/.ssh 目錄,可以手工創(chuàng)建一個(gè)(mkdir ~/.ssh),之后再通過(guò)cd
~/.ssh進(jìn)入SSH目錄
(2)可以通過(guò)ls -l命令查看SSH目錄下的文件,來(lái)確認(rèn)你是否已經(jīng)生成過(guò)SSH密鑰;如果SSH目錄為空,我們開(kāi)始第二步B,生成 SSH 密鑰;如果存在id_rsa.pub這個(gè)文件,說(shuō)明你之前生成過(guò)SSH密鑰,如何添加多個(gè)sshkey也不難,一般很少用,這里不介紹了。
B:生成SSH密鑰
我們通過(guò)下面的命令生成密鑰,請(qǐng)將命令中的YOUR_EMAIL@YOUREMAIL.COM替換為你注冊(cè)gitlab時(shí)用的Email地址。
ssh-keygen -t rsa -C "YOUR_EMAIL@YOUREMAIL.COM"
在SSH生成過(guò)程中會(huì)出現(xiàn)以下信息,按屏幕的提示操作即可:

Note:Enter passphrase (empty for no passphrase) :時(shí),可以直接按兩次回車鍵輸入一個(gè)空的
passphrase;也可以選擇輸入一個(gè) passphrase 口令,如果此時(shí)你輸入了一個(gè)passphrase,請(qǐng)牢記,之后每次提交時(shí)都需要輸入這個(gè)口令來(lái)確認(rèn)。
實(shí)踐過(guò)程中Android studio 如果有密碼無(wú)法同步,建議不要密碼。
公鑰默認(rèn)地址:C:\Users\用戶\.ssh
連接git服務(wù)器生成可信任文件known_hosts,否則會(huì)報(bào):Push failed: Failed with error: fatal: Could not read from remote repository.
Per Android Studio help under SSH Executable:
- Built-in: select this option to use the implementation provided by IntelliJ IDEA.
- Native: select this option to use native implementation.
修改SSH Executable 為 Native
3.獲取SSH公鑰信息:
SSH密鑰生成結(jié)束后,根據(jù)提示信息找到SSH目錄,會(huì)看到私鑰id_rsa和公鑰id_rsa.pub這兩個(gè)文件,不要把私鑰文件id_rsa的信息透露給任何人。我們可以通過(guò)cat命令或文本編輯器來(lái)查看id_rsa.pub公鑰信息。
(1)通過(guò)編輯器。使用你熟悉的文本編輯器,比如 記事本、Sublime Text等軟件打開(kāi)id_rsa.pub,復(fù)制里面的所有內(nèi)容以備下一步使用。
(2)通過(guò)cat命令。在命令行中敲入cat id_rsa.pub,回車執(zhí)行后命令行界面中會(huì)顯示id_rsa.pub文件里的內(nèi)容,復(fù)制后在下一步使用。
(3)通過(guò)直接使用命令將id_rsa.pub文件里的內(nèi)容復(fù)制到剪切板中
Windows: clip
< ~/.ssh/id_rsa.pub
Mac: pbcopy
< ~/.ssh/id_rsa.pub
GNU/Linux (requires xclip): xclip
-sel clip < ~/.ssh/id_rsa.pub
4.添加SSH公鑰到gitlab:
4-1.打開(kāi)gitlab的Profile配置頁(yè)面,選擇SSH Keys,如圖:


4-2.添加SSH公鑰。填寫Title和Key,其中Title是Key的描述信息,Key是上面復(fù)制的SSH公鑰的內(nèi)容,直接粘貼到輸入框中保存即可。


5.導(dǎo)入項(xiàng)目:
5-1.設(shè)置下git的用戶名和郵箱
在提交代碼前,還需要設(shè)置下git的用戶名和郵箱(最好用英文,不要出現(xiàn)中文),這樣提交記錄才會(huì)在gitlab上顯示帶有你名字的記錄。
在命令行窗口輸入(windows需要安裝打開(kāi) Git Bash工具才行):
git config --global user.name"your_name"
git config --global user.email "your_email"
5-2.導(dǎo)新項(xiàng)目到gitlab上
如果項(xiàng)目存在,需要導(dǎo)入到gitlab,可以通過(guò)命令行直接將項(xiàng)目導(dǎo)入上去。
- cd "本地存在項(xiàng)目的路徑"
- git init
- git remote add origin git@gitlab.com:USERNAME/PROJECTNAME.git
- git add .
- git commit -m 'first git demo'
- git push -u origin master
(注:將USERNAME和PROJECTNAME替換成用戶名和項(xiàng)目的名稱)
5-3.導(dǎo)入項(xiàng)目到本地
git clone"你的項(xiàng)目地址"

Note:如何在gitlab上找到你的項(xiàng)目地址位置,請(qǐng)看下圖:


|