gitlab 的简介

gitlab 是什么?

gitlab是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的web服务。 基础功能免费,高级功能收费

为什么要使用gitlab?

基础功能开源,可自行搭建 可以进行权限控制,使得代码对部分人可见 gitlab使用方便,非常适合企业内部使用

 

gitlab的安装(基于virtualbox虚拟机)

  • 在防火墙里开放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邮件服务

用途

有合并请求时,邮件通知; 账号注册时,邮件验证; 修改密码时,通过邮件修改

配置步骤

  • 开启QQ邮箱的smtp服务

开启QQ邮箱的smtp服务(不建议使用163邮箱,发几次之后,就不能发送)
设置--》账户--》smtp--》密保验证--》验证成功返回一串字符串,形状如(ausdixersybgcgid)保存返回的字符串

  • 修改 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'] = "136524592@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'] = "136524592@qq.com"
gitlab_rails['gitlab_email_from'] = '136524592@qq.com'

 

按esc退出到命令行模式
之后:wq 保存并退出

使得配置生效
gitlab-ctl reconfigure

  • 测试邮件服务是否正常

gitlab-rails console
Notify.test_email('接收方邮件地址','邮件标题','邮件内容').deliver_now
按回车,测试发送

gitlab 的账号注册及分组

  • 开启注册邮箱验证

admin area --》setting--》Sign-up restrictions--》勾选Send confirmation email on sign-up

  • 当前用户

root、123、vincent

  • 创建组

首页->create a group(http://192.168.56.101:8888/dashboard/groups)

访问级别
Private:只有组成员才能看到
Internal:只要登录的用户就能看到
Public:所有人都能看到

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

 

  • 键入命令:ssh-keygen -t rsa

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

gitlab 分支及标签的保护

  • 为什么要保护分支?

保护特定的分支不被随便合并,以免影响相应的分支

进入项目--> repository-->branches-->project setting

注意 能push 就能merge ,相应的权限把握好(master分支设置只能masters可以合并)

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值