gitlab仓库

目录

  • 1.本章课程内容大纲
  • 2.gitlab安装
    • 2.1 配置gitlab的url
    • 2.2 配置gitlab的邮箱
    • 2.3关闭不用的程序
    • 2.4 gitlab初始化
    • 2.5 访问gitlab服务
    • 2.6 验证邮箱功能是否可用
  • 3.gitlab汉化
  • 4.gitlab日常使用
    • 1.git修改为ssh连接方式
    • 2.gitlab备份
    • 3.gitlab恢复
    • 4.gitlab升级
    • 5.gitlab迁移
  • 5.gitlab总结

1.本章课程内容大纲

1.Gitlab版本库基本概述
??1.什么是gitlab?

??2.gitlab与github的不同?
??3.为什么使用gitlab优势和使用场景?
2.Gitlab服务组成?
3.gitlab安装配置?
??1.安装gitlab
??2.配置gitlab访问域名
??3.配置gitlab邮箱信息
4.gitlab中文汉化?
5.gitlab日常使用?
??1.Gitlab中的用户、用户组、项目仓库之间的关系?
??2.创建组、创建用户、创建项目?
??3.验证用户、组、项目的相关权限?
??3.如何将本地的本数据推送至gitlab的仓库? http方式、ssh方式?
??4.如果有新成员需要加入该项目该怎么办?
6.gitlab运维,如何备份、恢复、升级?

  1. gitlab介绍: 代码托管仓库,和gitee github 等等

2.gitlab与github区别

github针对私有仓库收费,国外 卡 ( 开源项目 )

gitlab自建自行维护, 创建公开仓库和私有仓库 (公司使用)

小型团队: 国内 码云 创建私有仓库

离线同步 分支管理 权限管理

2.gitlab安装

1.依赖环境

yum install -y curl openssh-server postfix wget

2.gitlab安装

yum localinstall gitlab-ce-12.0.3-ce.0.el7.x86_64.rpm 

2.1 配置gitlab的url

vim /etc/gitlab/gitlab.rb

external_url 'http://gitlab.oldxu.com'

2.2 配置gitlab的邮箱

gitlab_rails['gitlab_email_enabled'] = true
gitlab_rails['gitlab_email_from'] = "[email protected]"  # 发件邮箱
gitlab_rails['gitlab_email_display_name'] = 'OldXu-GitLab' # 发件人显示名称

gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.qq.com"
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_user_name'] = "[email protected]" #发件人邮箱账户
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

2.3关闭不用的程序

#关闭或不关闭不重要,取决于你的内存

1385 prometheus['enable'] = false
1474 node_exporter['enable'] = fals
1493 redis_exporter['enable'] = false
1511 postgres_exporter['enable'] = false
1560 grafana['enable'] = false

2.4 gitlab初始化

#第一次初始化时间较长,后期修改配置文件也需要初始化

[[email protected] ~]# gitlab-ctl reconfigure
[[email protected] ~]# gitlab-ctl status
[[email protected] ~]# gitlab-ctl start
[[email protected] ~]# gitlab-ctl stop
[[email protected] ~]# gitlab-ctl restart
[[email protected] ~]# gitlab-ctl stop nginx

2.5 访问gitlab服务

2.6 验证邮箱功能是否可用

5.重新初始化后检查gitlab邮箱是否可正常使用

[[email protected] ~]# gitlab-rails console
Notify.test_email('接收方邮件地址','邮件标题','邮件内容').deliver_now

Notify.test_email('[email protected]','gitlab-test','测试').deliver_now

3.gitlab汉化

1.原生汉化,但不全

2.第三方的汉化补丁包 https://gitlab.com/xhang/gitlab

gitlab-ctl stop
\cp -r gitlab-12-0-stable-zh/* /opt/gitlab/embedded/service/gitlab-rails/

gitlab-ctl reconfigure
gitlab-ctl start

4.gitlab日常使用

??1.Gitlab中的用户、用户组、项目仓库之间的关系?
??2.创建组、创建用户、创建项目?
??3.验证用户、组、项目的相关权限?
??3.如何将本地的本数据推送至gitlab的仓库? http方式、ssh方式?
??4.如果有新成员需要加入该项目该怎么办?

1.如何导入已有项目

2.项目 用户 用户组 关系?

1.基于组创建项目
2.创建两个用户 linux windows 加入dev组 , 分配权限 linux是所有者 windows是开发
3.使用linux系统关联linux用户,克隆项目,然后分别往master或dev分支提交代码测试
4.使用windows系统关联windows用户,克隆项目
尝试修改dev分支内容,测试提交。
尝试修改master分支内容。,尝试提交,如果不行
1.尝试发起合并请求由linux用户审批,检查合并后的效果
2.直接关闭该项目的分支保护,然后再次测试。

A B用户

用户权限

1.git修改为ssh连接方式

[[email protected] gdx]# git remote -v
origin  http://gitlab.oldxu.com/dev/gdx.git (fetch)
origin  http://gitlab.oldxu.com/dev/gdx.git (push)

[[email protected] gdx]# git remote remove origin
[[email protected] gdx]# git remote add origin [email protected]:dev/gdx.git

[[email protected] gdx]# git remote -v
origin  [email protected]:dev/gdx.git (fetch)
origin  [email protected]:dev/gdx.git (push)

2.gitlab备份

gitlab备份非常简单,就一条命令

gitlab_rails['backup_path'] = "/var/opt/gitlab/backups"
gitlab_rails['backup_keep_time'] = 604800

gitlab-ctl reconfigure

执行备份命令,( 如果希望每天执行,使用shell脚本或定时任务都ok )

gitlab-rake gitlab:backup:create

默认路径
[[email protected] ~]# ls /var/opt/gitlab/backups/
1573549930_2019_11_12_12.0.3_gitlab_backup.tar

3.gitlab恢复

gitlab-ctl stop unicorn
gitlab-ctl stop sidekiq

通过gitlab-rake命令进行恢复,恢复时需要指定此前备份的名称 (但不需要写git_lab_backup.tar后缀)

gitlab-rake gitlab:backup:restore BACKUP=1573549930_2019_11_12_12.0.3

最后启动所有gitlab的组件

gitlab-ctl start

4.gitlab升级

不要跨越大版本

12.0.3 --> 12.1.xx

12.1汉化包

5.gitlab迁移

https://www.xuliangwei.com/bgx/803.html#toc_4

5.gitlab总结

  • 1.gitlab介绍
  • 2.gitlab安装
  • 3.gitlab配置
    • 1.邮箱
    • 2.域名
    • 3.关闭没用服务(不需要)
  • 4.gitlab汉化
  • 5.gitlagb基本使用
    • 1.用户和用户组以及权限的关系?
    • 2.演示用户和用户组权限配置 ?
  • 6.gitlab备份
  • 7.gitlab恢复
  • 8.作业: gitlab升级 迁移
  • 9.扩展:
    • 1.gitlab中请求合并 (合并实现的几种方式)
    • 2.gitlab分支保护机制(调整分支保护机制)
    • 3.gitlab关闭主页面的注册功能 (因为默认注册即可登录)
    • 4.gitlab免密方式
      • http方式: 需要频繁输入密码 不是太方便
      • ssh方式: 将系统的公钥放置对应用户ssh下,即可实现免密登录。
    • 5.gitlab修改备份路径 (自行完成) /data/gitlab/backups

原文地址:https://www.cnblogs.com/baozexu/p/11846207.html

时间: 2024-10-11 20:38:00

gitlab仓库的相关文章

企业级gitlab仓库环境搭建

目录: 1.gitlab简介 2.安装配置gitlab 2.1.实验环境介绍 2.2.更改仓库存储位置 2.3.开启https访问 2.4.启用SMTP服务 3.GitLab的基本使用 4.备份及恢复 5.总结 1.gitlab简介 GitLab 是一个用于仓库管理系统的开源项目.使用Git作为代码管理工具,并在此基础上搭建起来的web服务.GitLab拥有强大的功能,可实现git仓库管理,代码审查,问题跟踪,WIkI等功能,而且配合GitLab CI能更简单的实现持续集成和自动部署.GitLa

(六)构建Docker私有仓库、Gitlab仓库和持续集成环境

环境说明 IP 功能 eth0:192.168.124.139 eth1:172.16.100.10 Docker私有仓库.Gitlab.持续集成 eth0:192.168.124.138 eth1:172.16.100.20 Docker服务器,运行容器 构建Docker私有仓库 我们通过Docker官方镜像registry来构建私有仓库. 首先要关闭防火墙.开启IP转发,在CentOS 7上IP转发是禁用的. 默认情况下会将仓库目录创建在容器的/var/lib/registry/下,所以我们

Go的Get命令兼容公司Gitlab仓库的HTTP协议

对于公司的私有Gitlab仓库,没有对https支持,在使用最新版本的go get命令时,需要使用-insecure参数来支持http,但如果导入的包里边依赖了需要https的仓库,就不好使了,折腾了一下,解决方案如下: 一.为Gitlab添加SSH Keys 1.生成 ssh keys ssh-keygen -t rsa -C "[email protected]" 2.查看内容 cat ~/.ssh/id_rsa.pub 3.复制到剪贴板 Windows clip < ~/.

gitlab仓库部署

很多企业自建gitlab仓库,用于源代码管理,然后结合jenkins工具实现代码的自动编译打包,项目部署,即实现自动化流水. 1.下载gitlab 最新版,通过rpm方式安装 gitlab下载地址:https://packages.gitlab.com/gitlab/gitlab-ce/安装环境初始化yum install curl policycoreutils openssh-server openssh-clients postfix -y默认,使用 Postfix 发送邮件 servic

github和gitlab仓库一起使用

github是网络公有代码仓库,一般用于私人代码托管,而gitlab一般是企业搭建的内部代码仓库.工作期间,我们都会同时用到这两个仓库.可公司邮箱与个人邮箱是不同的,由此产生的 SSH key 也是不同的,这就造成了冲突 .如何在一台机器上面同时使用 Github 与 Gitlab 的服务? 1.生成秘钥 公司的GitLab生成一个SSH-Key # 在~/.ssh/目录会生成gitlab_id-rsa和gitlab_id-rsa.pub私钥和公钥.我们将gitlab_id-rsa.pub中的内

gitlab仓库迁移

有的时候我们需要对gitlab上的代码进行迁移,希望在迁移后能保持原有的branch.tag.commit记录等.可以使用以下方式: 1.首先需要将项目fork到自己的仓库,否则提交到新仓库的时候需要输入之前gitlab账户的密码. 2.clone代码到本地. 3.修改remote仓库的地址,添加新的地址. vim .git/config [remote "origin"] url = [email protected]:xxx/xxx.git [remote "new&qu

gitlab仓库存储位置的修改方法

gitlab通过rpm包安装后,默认存储位置在/var/opt/gitlab/git-data/repositories,通常需要更改此路径到单独的一个分区来存储仓库的数据. 例如我这里把数据存放到/data/gitlab目录下 创建/data/gitlab目录 mkdir -p /data/gitlab 修改gitlab配置文件,找到git_data_dir vim /etc/gitlab/gitlab.rb 在git_data_dir下面添加一句git_data_dir "/data/git

gitlab仓库服务器搭建

``` curl -sS http://packages.gitlab.cc/install/gitlab-ce/script.rpm.sh | sudo bash sudo yum install gitlab-ce sudo gitlab-ctl reconfigure systemctl stop firewalld ````

Gitlab代码管理仓库安装部署

GitLab是利用 Ruby on Rails一个开源的版本管理系统,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目.它拥有与Github类似的功能,能够浏览源代码,管理缺陷和注释.可以管理团队对仓库的访问,它非常易于浏览提交过的版本并提供一个文件历史库.它还提供一个代码片段收集功能可以轻松实现代码复用,便于日后有需要的时候进行查找. Gitlab CE社区版完全开源免费,用来搭建自己专属的代码仓库,提供一个类似Github风格的web界面,还是很犀利的. 1.部署环