代码管理一直用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上找到你的项目地址位置,请看下图: