代碼管理一直用svn,Git的分支管理認爲是最好的,嘗試用用。git
一.GitLab簡介web
GitLab 是一個用於倉庫管理系統的開源項目。使用Git做爲代碼管理工具,並在此基礎上搭建起來的web服務。windows
可經過Web界面進行訪問公開的或者私人項目。它擁有與Github相似的功能,可以瀏覽源代碼,管理缺陷和註釋。能夠管理團隊對倉庫的訪問,它很是易於瀏覽提交過的版本並提供一個文件歷史庫。團隊成員能夠利用內置的簡單聊天程序(Wall)進行交流。它還提供一個代碼片斷收集功能能夠輕鬆實現代碼複用。安全
下載安裝 https://bitnami.com/stack/gitlab/installer(此爲一鍵安裝包,安裝很簡單,此處省略)bash
二.GitLab 的配置與使用服務器
1.建立新項目(web)ssh
1-1.登陸gitlab網址成功後,點擊右側導航條上的 「+」 就能夠進入建立項目的頁面編輯器
1-2.在建立工程的頁面,按照要求填寫項目的名稱和可見性等信息。ide
Project path:項目的路徑,通常能夠認爲是項目的名稱svn
Import prject from:從哪導入項目,提供Github/Bitbucket等幾個選項
Description(項目的描述):可選項,對項目的簡單描述
Visibility Level(項目可見級別):提供Private(私有的,只有你本身或者組內的成員能訪問)/Internal(全部登陸的用戶)/Public(公開的,全部人均可以訪問)三種選項。
2.添加和配置SSH公鑰:
2-1.SSH(Secure Shell)是一種安全協議,在你的電腦與GitLab服務器進行通訊時,咱們使用SSH密鑰(SSH Keys)認證的方式來保證通訊安全。
2-2.建立 SSH密鑰,並將密鑰中的公鑰添加到GitLab,以便咱們經過SSH協議來訪問Git倉庫。
SSH 密鑰的建立須要在終端(命令行)環境下進行,咱們首先進入命令行環境。一般在OS X和Linux平臺下咱們使用終端工具(Terminal),在Windows平臺中,可使用Git Bash工具,git客戶端安裝目錄下git-bash.exe文件
A:進入SSH目錄:cd ~/.ssh
(1)若是尚未 ~/.ssh 目錄,能夠手工建立一個(mkdir ~/.ssh),以後再經過cd ~/.ssh進入SSH目錄
(2)能夠經過ls -l命令查看SSH目錄下的文件,來確認你是否已經生成過SSH密鑰;若是SSH目錄爲空,咱們開始第二步B,生成 SSH 密鑰;若是存在id_rsa.pub這個文件,說明你以前生成過SSH密鑰,如何添加多個sshkey也不難,通常不多用,這裏不介紹了。
B:生成SSH密鑰
咱們經過下面的命令生成密鑰,請將命令中的YOUR_EMAIL@YOUREMAIL.COM替換爲你註冊gitlab時用的Email地址。
ssh-keygen -t rsa -C "YOUR_EMAIL@YOUREMAIL.COM"
在SSH生成過程當中會出現如下信息,按屏幕的提示操做便可:
Note:Enter passphrase (empty for no passphrase) :時,能夠直接按兩次回車鍵輸入一個空的 passphrase;也能夠選擇輸入一個 passphrase 口令,若是此時你輸入了一個passphrase,請牢記,以後每次提交時都須要輸入這個口令來確認。
實踐過程當中Android studio 若是有密碼沒法同步,建議不要密碼。
公鑰默認地址:C:\Users\用戶\.ssh
鏈接git服務器生成可信任文件known_hosts,不然會報: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密鑰生成結束後,根據提示信息找到SSH目錄,會看到私鑰id_rsa和公鑰id_rsa.pub這兩個文件,不要把私鑰文件id_rsa的信息透露給任何人。咱們能夠經過cat命令或文本編輯器來查看id_rsa.pub公鑰信息。
(1)經過編輯器。使用你熟悉的文本編輯器,好比 記事本、Sublime Text等軟件打開id_rsa.pub,複製裏面的全部內容以備下一步使用。
(2)經過cat命令。在命令行中敲入cat id_rsa.pub,回車執行後命令行界面中會顯示id_rsa.pub文件裏的內容,複製後在下一步使用。
(3)經過直接使用命令將id_rsa.pub文件裏的內容複製到剪切板中
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.打開gitlab的Profile配置頁面,選擇SSH Keys,如圖:
4-2.添加SSH公鑰。填寫Title和Key,其中Title是Key的描述信息,Key是上面複製的SSH公鑰的內容,直接粘貼到輸入框中保存便可。
五、windows客戶端操做
此時打開web找到你剛纔建立的項目,下方會有相關操做配置提示
注:倉庫地址中的gitlab.example.com在如下客戶端配置中需換成你的服務器ip地址。(緣由是我用一鍵安裝包,未做詳細配置)
示例:
客戶端打開git bash
Command line instructions(命令行指令)
Git global setup(全局設置)
git config --global user.name "***"
git config --global user.email "****@qq.com"
Create a new repository(建立一個新的存儲庫)克隆
git clone git@192.168.1.000:ceshi/bbbbb.git
cd bbbbb
touch README.md
git add README.md
git commit -m "add README"
git push -u origin master
Existing folder or Git repository(現有的文件夾或Git存儲庫)
#在本地的文件夾空白處,右鍵選擇git bashgit init
git remote add origin git@192.168.1.000:ceshi/bbbbb.git
git add .
git commit
git push -u origin master
以上操做完能夠愉快的,git add 、 git commit 、git push
6.導入項目:
6-1.設置下git的用戶名和郵箱
在提交代碼前,還須要設置下git的用戶名和郵箱(最好用英文,不要出現中文),這樣提交記錄纔會在gitlab上顯示帶有你名字的記錄。
在命令行窗口輸入(windows須要安裝打開Git Bash工具才行):
git config --global user.name"your_name"
git config --global user.email "your_email"
6-2.導新項目到gitlab上
若是項目存在,須要導入到gitlab,能夠經過命令行直接將項目導入上去。
[plain] view plain copy
cd "本地存在項目的路徑"
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替換成用戶名和項目的名稱)
6-3.導入項目到本地
git clone"你的項目地址"
Note:如何在gitlab上找到你的項目地址位置,請看下圖: