在Windows下搭建Gitlab服务器
⼀.GitLab简介
GitLab 是⼀个⽤于仓库管理系统的开源项⽬。使⽤作为代码管理⼯具,并在此基础上搭建起来的web服务。
可通过Web界⾯进⾏访问公开的或者私⼈项⽬。它拥有与Github类似的功能,能够浏览源代码,管理缺陷和注释。可以管理团队对仓库的访问,它⾮常易于浏览提交过的版本并提供⼀个⽂件历史库。团队成员可以利⽤内置的简单聊天程序(Wall)进⾏交流。它还提供⼀个代码⽚段收集功能可以轻松实现代码复⽤。
⼆.GitLab和Github的联系和区别
Github - ⼀个⽹站,提供给⽤户空间创建git仓储,保存⽤户的⼀些数据⽂档或者代码等。
GitLab 是⼀个⽤于仓库管理系统的开源项⽬。
git设置用户名和邮箱⼆者都是git的衍⽣产品
三.gitlab安装及使⽤
接下来我们通过windows的unbuntu虚拟机搭建⼀个gitlib服务端代码管理端
怎么利⽤hyper-v安装ubuntu的linux服务器,可以⾃⼰百度,⾮常简单,10-20分钟就可以搞定。
1.准备⼯作
windows10 、hyper-v、ubuntu的linux虚拟机
2.转到以下地址,安装gitlab
about.gitlab/downloads/#ubuntu1404
只需要简单的四部,就可以安装好gitlab。如下图:
在完成后,直接在浏览器中,输⼊127.0.0.1,就可以直接访问gitlab的web端管理地址,如下图:
然后直接输⼊输⼊图⼀中,第四步的账号密码,就可以直接访问了。如下图:
到此,gitlab服务就搭建完成,下⼀篇⽂章,我们会讲解,安装过程中出现的问题,如安装后,输⼊127.0.0.1访问不到gitlab的web管理页⾯,以及怎样配置⾃定义的gitlab 域名服务。
怎么使⽤呢,后期再说,其实这个和github代码管理有很多相似的地⽅
四.GitLab 的配置与使⽤
1.创建新项⽬(web)
1-1.登录gitlab⽹址成功后,点击右侧导航条上的 “+” 就可以进⼊创建项⽬的页⾯
1-2.在创建⼯程的页⾯,按照要求填写项⽬的名称和可见性等信息。
Project path:项⽬的路径,⼀般可以认为是项⽬的名称
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客户端安装⽬录下⽂件
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公钥的内容,直接粘贴到输⼊框中保存即可。