虚拟机的安装
1.安装virtualbox
https://www.virtualbox.org/
2.安装centos6.6
3.配置网络
右键-->网络-->网卡2-->host-only

cd /etc/sysconfig/network-scripts/
vi ifcfg-eth0
将此处改为yes ONBOOT=yes
此时可ping外网 cp ifcfg-eth0 ifcfg-eth1
加入以下内容
DEVICE=eth1
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.56.101
NETMASK=255.255.255.0

4.使用工具连接centos
https://winscp.net/eng/download.php
https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html

gitlab的简介
1.gitlab是什么
是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的web服务。
基础功能免费,高级功能收费
2.为什么要使用gitlab
1.基础功能开源,可自行搭建
2.可以进行权限控制,使得代码对部分人可见
3.gitlab使用方便,非常适合企业内部使用

gitlab的安装

1.linux必要配置
在防火墙里开放http跟ssh端口
yum install lokkit
yum install curl openssh-server openssh-clients postfix cronie -y
service postfix start
chkconfig postfix on
lokkit -s http -s ssh
添加gitlab仓库,并安装
curl -sS http://packages.gitlab.cc/install/gitlab-ce/script.rpm.sh | sudo bash
sudo yum install gitlab-ce
启动gitlab
gitlab-ctl reconfigure
vim /etc/gitlab/gitlab.rb
修改external_url为gitlab机子的ip+要使用的端口 如:http://192.168.56.101:8888
修改nginx['listen_port'] = 8888
重新配置gitlab并重启
gitlab-ctl reconfigure
gitlab-ctl restart
配置防火墙
vim /etc/sysconfig/iptables
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8888 -j ACCEPT
service iptables restart

配置gitlab邮件服务
配置邮箱服务的用途
有合并请求时,邮件通知
账号注册时,邮件验证
修改密码时,通过邮件修改
配置步骤:
1.开启QQ邮箱的smtp服务(不建议使用163邮箱,发几次之后,就不能发送)
设置--》账户--》smtp--》密保验证--》验证成功返回一串字符串,形状如(ausdixersybgcgid)
保存返回的字符串
2.修改gitlab配置

        vim /etc/gitlab/gitlab.rb
按/后输入smtp_enable,找到下面这一串文本,进行修改
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.qq.com"
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_user_name'] = "1403780990@qq.com"
gitlab_rails['smtp_password'] = "开通smtp时返回的字符"
gitlab_rails['smtp_domain'] = "qq.com"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = true user['git_user_email'] = "1403780990@qq.com"
gitlab_rails['gitlab_email_from'] = '1403780990@qq.com'
按esc退出到命令行模式
之后:wq 保存并退出 gitlab-ctl reconfigure
3.测试邮件服务是否正常
gitlab-rails console
Notify.test_email('接收方邮件地址','邮件标题','邮件内容').deliver_now
按回车,测试发送。

gitlab的账号注册及分组

1.开启注册邮箱验证
admin area --》setting--》Sign-up restrictions--》勾选Send confirmation email on sign-up
2.当前用户
root、123、wiggin
3.创建组
首页->create a group(http://192.168.56.101:8888/dashboard/groups)
访问级别 
Private:只有组成员才能看到
Internal:只要登录的用户就能看到
Public:所有人都能看到

Guest:可以创建issue、发表评论,不能读写版本库
Reporter:可以克隆代码,不能提交
Developer:可以克隆代码、开发、提交、push
Master:可以创建项目、添加tag、保护分支、添加项目成员、编辑项目
Owner:可以设置项目访问权限 - Visibility Level、删除项目、迁移项目、管理组成员

  1. 键入命令:ssh-keygen -t rsa
  2. 提醒你输入key的名称,输入如id_rsa
  3. 在C:\Users\用户.ssh下产生两个文件:id_rsa和id_rsa.pub
  4. 用记事本打开id_rsa.pub文件,复制内容,在gitlab.com的网站上到ssh密钥管理页面,添加新公钥,随便取个名字,内容粘贴刚才复制的内容。

gitlab分支及标签的保护

为什么要保护分支
保护特定的分支不被随便合并,以免影响相应的分支
进入项目--> repository-->branches-->project setting
注意 能push 就能merge ,相应的权限把握好(master分支设置只能masters可以合并)

更多学习资料可查看
https://xdclass.net/html/sort.html

如需针对此内容进行深入了解可查看
Jenkins持续集成视频教程Git

最新文章

  1. entityframework学习笔记--004-无载荷与有载荷关系
  2. Bootstrap学习应用
  3. Python-面向对象编程(一)
  4. mysql远程登录权限修改ubuntu
  5. RMAN的入门篇
  6. Java DSL简介(收集整理)
  7. linux系统字符集
  8. 查看Linux系统网卡信息
  9. HTML5边玩边学(1)画布实现方法
  10. linux杂谈(十八):DNS服务器的配置(一)
  11. jquery实现全选、全不选、反选操作
  12. Web NFC API
  13. Python第三方库(模块)"scikit learn"以及其他库的安装
  14. C#进程间通信--API传递参数(SendMessage)
  15. 基于visual Studio2013解决C语言竞赛题之0610冒泡排序函数
  16. Android程序猿学习路径
  17. margin的auto的理解
  18. Java语言的分支
  19. Tornado 网站demo 二
  20. Shell从入门到精通进阶之三:表达式与运算符

热门文章

  1. thinkphp5.1composer引入第三方类库使用注意
  2. $.store.book[?(@.title =~ /^.*Honour.*$/i)]
  3. JMETER断言:终极指南
  4. sql新增字段注意事项
  5. python入门之sys模块、shutil模块
  6. F. Gourmet and Banquet(贪心加二分求值)
  7. OpenStack Cirros
  8. (转)vimdiff 快速比较和合并少量文件
  9. Composition or inheritance for delegating page methods?
  10. Cmder 简明使用说明