一. 管理员配置 gitlab

1. 登录 gitlab

等待 docker 容器启动完成后, 登陆

http://localhost:8080

第一次访问是让我们修改管理员密码。如下所示

初始化 gitlab 管理员密码

设置后管理员密码后,就进入登录页面,输入用户名 root 和刚才设置的密码就进入了 gitlab 的控制台。如下图所示

gitlab 管理员控制台

2. 创建组( group)

gitlab 里面有三类对象:组( group)、项目( project)和用户 (people)。

为了方便管理,我们应该基于组来创建项目。一个项目就是一个 git 的仓库。基于组创建项目 ,然后将用户设置合适的权限后加入到组里面。这样用户就有了组里面所有项目的对应权限。

点击 “Create a group” 链接,如下图所示创建一个“健康医疗开发组” 的组

gitlab 创建组

3. 创建用户(people)

点击 “Add people” 链接,如下图所示创建一个 “yanggch” 的用户

gitlab 增加用户

因为还没有配置好邮件服务,所以还不能发送用户初始化密码的邮件。我们需要编辑用户,手动设置一个密码。如下图所示。如果用户忘记了密码,充值密码也可以在这里进行。

gitlab 修改用户信息

3. 将用户加入组

为了方便管理,需要将用户加入到对应的组里面。如下图所示,在组管理界面中,点击组的名称,进入组用户设置界面。将刚才创建的用户 “yanggch” 加入到组 “健康医疗开发组”中,并且给他设置为 “Master” 角色。只有 “Master” 或者 “Owner” 角色才能推送 git 的更新。

image.png

4. 创建项目(project)

增加 gitlab 组的时候,为了让项目让组里面的人都能访问,注意要将项目建立在组之下。如下图所示,在“健康医疗开发组”之下建立了 “redis_util” 的项目。

gitlab 创建项目

这样项目建好之后就可以被组里的用户访问了。

二. 客户端访问

1. 设置ssh Key

刚才那种方式通过 http 协议和 gitlab 进行通信,每次都要输入用户名和密码,非常不方便。用户可以设置通过 ssh 进行交互,将ssh key 加入到用户的 sshkey 设置列表中。

参考“命令访问” 章节进入 git 的 bash 环境。执行下面的命令进入 ssh key 存储目录

cd ~/.ssh

目录中 id_rsa.pub 是 ssh 访问的公钥。如果不存在则执行下面的命令生成

ssh-keygen -t rsa

全部回车后,会生成 id_rsa.pub 文件。

将文件中的内容拷贝到剪贴板。然后通过前面创建的用户名和密码登录 gitlab 控制台。在下面的界面中,将 id_rsa.pub 文件的内容填入文本框

配置用户 ssh key

保存后。再通过 ssh 协议操作 git 仓库,将不再需要输入用户名和密码。如下所示

免登陆操作 gitlab 仓库

2. 推送一次提交

首先配置当前仓库的用户名和用户邮箱配置

cd redis_util
git config --local user.name "yanggch"
git config --local user.email "yanggch@inspur.com"

然后在 redis_util 目录下加入一个 readme.txt,执行下面的命令提交并将更新推送到 gitlab 远程服务器

#将新文件加入到版本管理
git add readme.txt
#提交
git commit -m"第一次提交"
#将当前分支 master 推送到远程仓库
git push
#以 master 分支为基础建立一个新的 dev 本地分支
git checkout -b dev
#将本地仓库分支推送到远程仓库,在远程仓库建立对应的 dev 分支
git push --set-upstream origin dev

到 gitlab 控制台查看 redis_util 的状态。如下图所示

redis_util 分支状况

到此,我们就完成了一个公司级别的 gitlab 服务器的搭建工作。同事们可以在这个上面流畅的进行开发了。

gitlab的配置的更多相关文章

  1. Gerrit与Gitlab同步配置replication&其他配置

    一.Gerrit与Gitlab同步配置 当配置好gerrit环境后,还需要与现有gitlab库进行同步配置,否则会影响现有开发与打包流程. 1.安装gerrit replication插件 unzip ...

  2. Jenkins中使用GitLab的配置

    1. 概述 在Jenkins中从GitLab上拉取代码进行打包或测试. 2. 安装 Jenkins和GitLab默认已经安装好,安装过程此处不再赘述. 在Jenkins上安装Git和Gitlab插件, ...

  3. 【GitLab】gitlab上配置webhook后,点击测试报错:Requests to the local network are not allowed

    gitlab上配置webhook后,点击测试报错: Requests to the local network are not allowed 操作如下: 报错: 错误原因: gitlab 10.6 ...

  4. 本地docker搭建gitlab, 并配置ldap认证

    基于Docker在Mac OS X系统中的部署和设置GitLab的具体过程如下:   1. 安装Docker for Mac (参见https://docs.docker.com/docker-for ...

  5. gitlab发送邮件配置

    在使用gitlab过程中,通常需配置邮件来实现代码管理服务器向成员(member)发送邮件.本文将实现gitlab中邮件配置 1.编辑 /etc/gitlab/gitlab.rb,修改配置邮件,这里以 ...

  6. CentOS gitlab 安装配置

    CentOS gitlab 安装配置 2018-11-02 11:23:09   Visit  5 在/etc/yum.repos.d 目录下创建文件gitlab-ce.repo,使用国内的安装源 b ...

  7. [ci]gitlab安装配置(含gitlab邮件配置)

    gitlab安装配置 参考: https://www.unixhot.com/article/48 原则:简单维护为准,故yum安装gitlab 1,gitlab安装 2,gitlab邮箱配置 1,g ...

  8. 4、git和gitlab的配置(1)

    4.0.服务器说明: 服务器名称 ip地址 controller-node1 172.16.1.90 4.1.git介绍: 1.git分布式图: 2.git区域: 3.四种状态: 上面的操作在工作目录 ...

  9. Centos 6.5 GitLab安装配置搭建详细过程

    GitLab搭建详细过程   一.前提 系统:Centos 6.5 软件版本:gitlab-7.8.4 Selinux:关闭 防火墙规则:先清空(搭建好了后续自己添加相关放行规则) 二.yum源配置和 ...

  10. GitLab 安装配置笔记(转)

    GitLab的安装方式 GitLab的两种安装方法: 编译安装 优点:可定制性强.数据库既可以选择MySQL,也可以选择PostgreSQL;服务器既可以选择Apache,也可以选择Nginx. 缺点 ...

随机推荐

  1. Linux 中用 dd 命令来测试硬盘读写速度

    dd 是 Linux/UNIX 下的一个非常有用的命令,作用是用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换. dd 命令通用语法格式如下: dd if=path/to/input_file ...

  2. 互联网运营+SEO:推荐必看的5本书籍

    本文首发于:风云社区(scoee.com) 最近开始学习和研究互联网运营和SEO,对于我这个小白来讲,还是有些吃力,毕竟从来没接触这方面的,尽管在之前的软件公司做过售前和产品相关的工作,但毕竟与互联网 ...

  3. XML异常

    1.com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException: 1 字节的 UTF-8 序列的字节 1 无效 ...

  4. CentOS上手工部署kubernetes集群

    本文完全是根据二进制部署kubernets集群的所有步骤,同时开启了集群的TLS安全认证. 环境说明 在下面的步骤中,我们将在三台CentOS系统的物理机上部署具有三个节点的kubernetes1.7 ...

  5. 设计模式---接口隔离模式之代理模式(Proxy)

    一:概念 代理模式(Proxy Pattern)就是为其他对象提供一种代理以控制对这个对象的访问. 比如: 智能指针 为别人做嫁衣 所谓代理,是指具有与代理元(被代理的对象)具有相同的接口的类,客户端 ...

  6. jackson工具类 对象转字符串 -- 字符串转对象

    这个一个json的工具类.用的是jackson,当然还有谷歌的gosn,阿里的fastjson ,但是jackson的感觉还是最成熟(网上大神说的...) 实现的功能很简单,对象转字符串  字符串转简 ...

  7. vue @blur v-model数据没有更新问题

    今天遇到一个问题,是一个输入框绑定了一个失去焦点事件,要发送一个客户填写的数据给后台查询然后拿到返回值把它渲染到页面上,但是从后台获取到的数据却没有在页面上渲染出来,console.log打印时显示数 ...

  8. https笔记【转】

    图解HTTPS 我们都知道HTTPS能够加密信息,以免敏感信息被第三方获取.所以很多银行网站或电子邮箱等等安全级别较高的服务都会采用HTTPS协议. HTTPS简介 HTTPS其实是有两部分组成:HT ...

  9. awk指定[]为分隔符

    root@standby[16:38:35]$ root@standby[16:38:35]$ cat tmp.log qq [8.8.8.8] 6.6.6.6 [1502301436.016] &q ...

  10. JS 样式字符串 转 JSON对象

    项目中需要把div 上的样式值转成数据展示 形如: padding: 7px 2px 1px 3px; color: rgb(238, 65, 65); background-color: rgb(2 ...