Git基础(2)_GitLab

9 篇文章 0 订阅
2 篇文章 0 订阅
本文介绍了分布式版本控制系统Git的基础知识,着重讲解了Git服务器的作用以及GitHub、Gitee和GitLab等常用Git服务器的特点。详细步骤指导如何安装、配置和使用GitLab,包括初始化、用户管理、组管理、项目管理和代码托管,以及如何设置HTTP免密推送。
摘要由CSDN通过智能技术生成

分布式版本控制Git

承接上一篇

Git基础 ( 1 )

Git服务器
  • C/S架构的Git服务器
  • 是存放代码的公用平台
  • 是多人并行协作的核心部分
  • 通常单独部署在一台独立的服务器上
  • 客户端可以通过网络访问服务器上的仓库
  • 类似共享文件/共享yum源
常用的Git服务器
  • GitHub 是一个基于git实现的在线托管代码的仓库 , 向互联网开放 , 企业版收费(诸多开源资源可以在此网站下载)

  • Gitee 即码云 , 是Oschina公司免费给企业使用的公用代码托管平台 , 不需要自己搭建环境.(Gitee , 支持创建仓库 , 白嫖开源软件 , 支持md文件在线观看)

  • GitLab 类似于GitHub , 一般用于企业内部搭建Git似有服务器 , 需要自己搭建

GitLab简介
  • GitLab 基于Ruby on Rails开发 , 速度快 , 安全稳定 , 部分程序已经用GO语言重写
  • GitLabGitHub的功能类似 , 能够浏览源代码 , 管理缺陷和注释
  • 可以管理团队对仓库的访问 , 非常易于浏览提交过的版本并提供一个文件历史库
  • 提供一个代码片段收集功能可以实现代码复用 , 便于日后有需要时进行查询
  • GitLab EE 企业版
  • GitLab CE 社区版
  • GitLab相关站点
    • 官网 : https://gitlab.com/
    • 中文社区版 : https://gitlab.com/xhang/gitlab/
    • 清华站 (推荐): https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/
GitLab的搭建
  • 安装依赖包

    • yum clean all //清理yum缓存
    • yum -y install policycoreutils-python-utils.noarch //安装包
  • 安装GitLab包 gitlab-ce-12.4.6-ce.0.el7.x86_64.rpm

    • rpm -ivh --nodeps --force gitlab-ce-12.4.6-ce.0.el7.x86_64.rpm //忽略依赖强制安装
    • rpm -qa | grep gitlab //确认安装
  • 重新加载GitLab配置 gitlab-ctl reconfigure

  • 重新启动GitLab相关服务 gitlab-ctl restart

#重启GitLab相关服务
[root@GitLab ~]# gitlab-ctl restart
ok: run: alertmanager: (pid 1975) 0s        //报警服务
ok: run: gitaly: (pid 1986) 1s              //Git后台服务
ok: run: gitlab-exporter: (pid 2014) 0s     //Prometheus数据采集器
ok: run: gitlab-workhorse: (pid 2020) 1s    //反向代理服务器
ok: run: grafana: (pid 2117) 0s             //数据可视化服务
ok: run: logrotate: (pid 2129) 0s           //日志文件管理服务
ok: run: nginx: (pid 2135) 1s               //静态WEB服务
ok: run: node-exporter: (pid 2142) 0s       //Prometheus数据采集器
ok: run: postgres-exporter: (pid 2148) 1s   //Prometheus数据采集器
ok: run: postgresql: (pid 2159) 0s          //数据库服务
ok: run: prometheus: (pid 2168) 0s          //Prometheus监控服务
ok: run: redis: (pid 2178) 1s               //缓存数据库服务
ok: run: redis-exporter: (pid 2183) 0s      //Prometheus数据采集器
ok: run: sidekiq: (pid 2192) 0s             //异步执行队列服务
ok: run: unicorn: (pid 2203) 0s             //Rails托管WEB服务
GitLab的使用
GitLab初始化
  • GitLab主机确认80端口被监听 ss -anptul | grep :80

  • 浏览器访问: http://localhost/ (GitLab服务器的IP地址)

    • 首次访问页面情况如图

    • 管理员用户设置为root

    • 需要设置root用户密码 , 密码有强度需求 , 这里设为1234.com

    • 请添加图片描述

    • 填写完初始化密码后点击确认 , 页面跳转到登陆页

    • 用户名 : root , 密码 : 1234.com , 登陆

    • 请添加图片描述

    • 登陆后展示GitLab仪表盘 , 页面默认为英文 , 可以设置中文 , 但程度有限

    • 请添加图片描述

    • 点击右上角用户旁的小三角选择Settings , 进入用户设置页面

    • 请添加图片描述

    • 进入设置页面后左边倒数第三个Preferences选项 , 选择语言改成中文后 , 保存退出重新登录

    • 请添加图片描述

GitLab用户管理
  • 点击左上角的扳手图标 ,进入仪表盘管理页面

  • 请添加图片描述

  • 选择New user 创建新用户

  • 请添加图片描述

  • 进入用户创建页面 , 填写真实姓名 , Gitlab用户名 , 用户邮箱 (上一篇设置了git的用户名和邮箱 )

    https://blog.csdn.net/2401_82773077/article/details/135780145?

  • 请添加图片描述

  • 页面弹出用户创建成功提示信息 , 点击右侧Edit设置用户密码

  • 请添加图片描述

  • 跳转至用户信息编辑页面 , 找到Password部分 , 添加密码 , 这里设置的是1234.com

  • 请添加图片描述

  • 点击最下方保存后 , 页面弹出用户已成功更新信息 , szhou初始密码设置成功后 , 后续使用szhou用户登录时首次会要求修改密码

  • 请添加图片描述

  • 登录root用户 , 点击扳手回到仪表盘页面 , User数量更新为2 , 下方有新建的用户

  • 请添加图片描述

GitLab组管理
  • 点击Groups 下的 New group 创建组

  • 请添加图片描述

  • 页面跳转至新建群组页面 , 组名填写devops , URL路径自动生成 , 群组描述信息选填 , 可见性级别选择公开 , 方便后续操作

  • 请添加图片描述

  • 新创建群组页面点击下方创建按钮跳转至下面的页面 , 右侧可以设置群主成员 , 将之前创建的szhou用户以主程序员身份maintainer加入群组 , 右侧的编辑按钮可以修改群组设置

    • 常用的组名 :
      • guest : 老板
      • reporter : 测试工程师
      • developer : 开发者
      • maintainer : 开发经理 , 项目负责人
      • owner : 运维组同事
  • 请添加图片描述

GitLab项目管理
  • 点击扳手进入仪表盘管理页面 , 点击New project 创建新项目

  • 请添加图片描述

  • 页面跳转至项目信息页 , 填写项目名称myproject , 项目标识串与名称一致 , 无需手工填写 , 项目归属有默认的root用户调整为devops组 . 项目描述信息选填 , 公开级别选择公开

  • 请添加图片描述

  • 点击创建项目后页面跳转至本页面 , 上方有项目创建成功的信息 , 点击右侧克隆按钮 , 弹窗中提示项目地址 , 上方有SSH公钥设置提醒 , 如选择HTTP方式忽略即可.下方有命令提示 , 可参考命令关联客户端与服务器

  • 请添加图片描述

  • 根据客户端情况选择参考命令 , 分新建仓库 ,推送文件夹 , 推送Git仓库三种

  • 请添加图片描述

代码托管
关联Programer主机myproject仓库与GitLab服务器上myproject项目
  • 查看远程仓库关联 git remote -v
  • 关联项目 git remote add origin http://192.168.88.20/devops/myproject.git
  • 删除项目 git remote remove origin
  • 推送本地仓库所有分支 git push -u origin --all
    • 输入创建的账户 , 密码
  • 推送本地仓库所有标签 git push -u origin --tags
    • 输入创建的账户 , 密码
  • 登录GitLab项目管理页面查看推送情况
    • 完整Git客户端与服务端关联后 , 确认分支推送情况和标签推送情况 , 下方会展示出文件列表 , 支持在线查看内容
    • 请添加图片描述
HTTP方式免密推送
  • 每次推送都需要认证 ,可以设置免密推送
    • cache : 默认缓存15分钟 , 期间无需认证 , 可以用过追加 --timeout=3600 设置超时时间
    • store : 永久存储
      • git config --global credential.helper store 持久保存
      • git push (需要认证一次 , 之后就不用认证了 , 系统自动读取 ~/.git-credentials 取用户名和密码)
  • 21
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值