基于GitLab与Git Extensions搭建版本控制工具

1.背景html

  你们知道GitHub是如今很是流行的代码托管工具,可是若是有些项目不想开源的话,则须要付费,所以萌生了本身搭建一个Git的版本控制工具,供内网使用。GitLab则是个好的选择,可是GitLab只支持Linux版本,所以则需在Windows服务器上搭建个Linux的虚拟机,我选择了Ubuntu。此时服务器端选型成功,客户端须要安装什么呢,我选择了Git Extensions,用它是由于他直接集成了Git以及KDiff3工具,更方便的是这个工具自带Putty,能够很方便地生成SSH公钥和私钥。git

2.环境服务器

  (1)服务器端:Ubuntu(搭建在Win10上的虚拟机)、GitLab网络

      (2)客户端:Win10 Git Extensions(包括Git、KDiff3)工具

3.实现思路gitlab

  (1)安装Ubuntu,版本号:Ubuntu 16.04,具体安装步骤就不赘述,能够参考http://blog.csdn.net/u013142781/article/details/50529030,Ubuntu安装完发现了一个问题,屏幕过小,并且没法放大,能够经过安装Vmware Tool解决,具体能够参考http://jingyan.baidu.com/article/fc07f98977b60f12ffe5199b.html,这里须要用到Ubuntu的终端工具(相似Windows的cmd),须要采用命令行的方式去执行,刚开始有些不太习惯。(注:打开终端的快捷键:ctrl+alt+T,切换管理员的命令:sudo su)url

   (2) Ubuntu虚拟机与Win10宿主机的网络链接方式,有两种方式,一个是桥接模式,另外一个是NAT模式。桥接模式是直接链接物理网络的,也就是桥接模式下Ubuntu虚拟机跟Win10是在同一个网段的局域网里的。比如个人Win10 IP:192.168.0.104,桥接模式下的Ubuntu的Ip是192.168.0.103;而NAT模式则是共享主机的Ip,自动生成一个IP地址,此地址跟宿主机不在一个网段里,好比我这边IP地址是:192.168.182.129。当前的业务需求是在局域网里能访问,选择了桥接模式。Ubuntu以下图所示。spa

     (3)安装GitLab,安装过程还算顺利,建议安装Gitlab安装包,我安装的是gitlab-ce_9.1.1-ce.0_amd64,具体步骤再也不赘述,详细可参考http://blog.csdn.net/u011241606/article/details/51471367。建议把external_url 设成当前IP地址。.net

     (4)客户端访问GitLab URL地址,以下图所示。默认帐号是root命令行

      (5)客户端安装Git Extensions,安装的过程会提醒你安装Git以及KDiff3,安装过程当中基本不需求设置什么,记得选SSH客户端Putty,详细参考http://blog.csdn.net/mysouling/article/details/51304173。Git Extension能够生成公钥、私钥,公钥是要放到GitHub、GitLab里面的,私钥是存在本地,每次拉取代码或者克隆代码经过Pageant须要加载的。每一个用户都对应一个公钥、一个私钥。GitLab在Setting的SSH keys里面设置,以下图所示。

  (6)Git Extensions安装完,在Git Extensions里新建Group、项目、用户等,具体操做再也不赘述,GitLab已经部署好,这样就能够上传代码到GitLab里,而后经过Git Extensions经过SSH Git地址拉取代码,提交到本地仓库,提交到远程Git仓库(GitLab里)。以下图所示。

  (7)在使用过程当中,发现当GitLab修改了IP地址,可是SSH地址(如git@192.168.0.103:zhangviv/develop.git)仍是原来的地址,则须要进行修改,具体用法参考http://blog.csdn.net/lcalqf/article/details/54862046。

相关文章
相关标签/搜索