1.安装gitlab
注意关闭网络防火墙和网络安全组
# 1.下载镜像 wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-14.10.5-ce.0.el7.x86_64.rpm # 2.安装依赖 yum install -y policycoreutils openssh-server openssh-clients postfix policycoreutils-python # 3.安装gitlab rpm -ivh gitlab-ce-14.10.5-ce.0.el7.x86_64.rpm # 4.修改配置文件 vim /etc/gitlab/gitlab.rb # 修改配置文件访问路径 external_url 'http://192.168.93.129:9000' # 5.重新配置 gitlab-ctl reconfigure # 6.重启gitlab gitlab-ctl restart # 7.查看root的初始化密码 cat /etc/gitlab/initial_root_password # 8.控制台修改root密码,也可以登录网页修改密码 # 打开控制台 gitlab-rails console # 在打开的控制台中修改密码 user = user.where(id:1).first user.password = 'gen12345678' user.password_confirmation = 'gen12345678' user.save!
2.配置gitlab邮件服务
- 配置邮箱服务的用途
有合并请求时邮件通知,账号注册时邮件验证,修改密码时通过邮件修改
- 配置步骤
开启qq邮箱的smtp服务:设置–>账号–>smtp–>得到授权码
修改gitlab配置vim /etc/gitlab/gitlab.rb
gitlab_rails['smtp_enable'] = true gitlab_rails['smtp_address'] = "smtp.qq.com" gitlab_rails['smtp_port'] = 465 gitlab_rails['smtp_user_name'] = "2452582323@qq.com" gitlab_rails['smtp_password'] = "授权码" gitlab_rails['smtp_domain'] = "qq.com" gitlab_rails['smtp_authentication'] = "login" gitlab_rails['smtp_enable_starttls_auto'] = true gitlab_rails['smtp_tls'] = true gitlab_rails['smtp_pool'] = false user['git_user_email'] = "2452582323@qq.com" gitlab_rails['gitlab_email_from'] = '2452582323@qq.com' gitlab_rails['smtp_openssl_verify_mode'] = 'none'
- 加载配置
gitlab-ctl reconfigure
- 测试邮件服务是否正常
gitlab-rails console notify.test_email('接收方邮件地址','邮件标题','邮件内容').deliver_now
3.gitlab的账号注册邮箱验证及其分组
修改root用户自己的邮箱
开启注册邮箱验证
创建组groups
访问级别
private
:只有组成员才能看到internal
:只要登录的用户就能看到internal
:所有人都能看到
添加组成员设置权限
guest
:可以创建issue、发表评论,不能读写版本库reporter
:可以克隆代码,不能提交developer
:可以克隆代码、开发、提交、pushmaintainer
:可以创建项目、添加tag、保护分支、添加项目成员、编辑项目owner
:可以设置项目访问权限、删除项目、迁移项目、管理组成员
4.gitlab分支和标签的保护
- 为什么要保护分支
保护特定的分支不被随便合并,以免影响相应的分支
操作:项目拥有者进入项目管理页面,无权限用户如需合并分支则发送请求合并(merge request)消息,由有权限人merge
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持代码网。
发表评论