GitLab是一款使用MIT许可证的基于网络的Git仓库管理工具,我们可以使用它来搭建自己的Git仓库,本文将介绍如何使用Gitlab在Linux下快速搭建Git仓库。

Gitlab服务端搭建

在Linux(CenterOS7.6)下我们会以Docker的方式来安装Gitlab,对Docker不了解的朋友可以参考:开发者必备Docker命令。

下载Gitlab的Docker镜像

docker pull gitlab/gitlab-ce

运行如下命令来启动Gitlab

需要注意的是我们的Gitlab的http服务运行在宿主机的1080端口上,这里我们将Gitlab的配置,日志以及数据目录映射到了宿主机的指定文件夹下,防止我们在重新创建容器后丢失数据。

docker run --detach \
 --publish 10443:443 --publish 1080:80 --publish 1022:22 \
 --name gitlab \
 --restart always \
 --volume /mydata/gitlab/config:/etc/gitlab \
 --volume /mydata/gitlab/logs:/var/log/gitlab \
 --volume /mydata/gitlab/data:/var/opt/gitlab \
 gitlab/gitlab-ce:latest

开启防火墙的指定端口

由于Gitlab运行在1080端口上,所以我们需要开放该端口,注意千万不要直接关闭防火墙,否则Gitlab会无法启动。

# 开启1080端口
firewall-cmd --zone=public --add-port=1080/tcp --permanent
# 重启防火墙才能生效
systemctl restart firewalld
# 查看已经开放的端口
firewall-cmd --list-ports

访问Gitlab

  • 访问地址:http://192.168.3.101:1080/

  • 由于Gitlab启动比较慢,需要耐心等待10分钟左右,如果Gitlab没有启动完成访问,会出现如下错误。

  • 可以通过docker命令动态查看容器启动日志来知道gitlab是否已经启动完成。

docker logs gitlab -f

Gitlab的使用

Gitlab启动完成后第一次访问,会让你重置root帐号的密码

重置完成后输入帐号密码登录

选择创建项目、创建组织、创建帐号

创建组织

首先我们需要创建一个组织,然后在这个组织下分别创建用户和项目,这样同组织的用户就可以使用该组织下的项目了。

创建用户并修改密码

找到添加用户的按钮

输入用户名密码添加用户

在编辑界面中修改用户密码

创建项目并添加README文件

将用户分配到组织

Git客户端安装及使用

下载Git客户端并安装

  • 下载地址:https://github.com/git-for-windows/git/releases/download/v2.23.0.windows.1/Git-2.23.0-64-bit.exe

  • 下载完成后,一路点击Next安装即可。

clone项目

  • 找到项目clone的地址:

  • 打开Git命令行工具:

图片

  • 执行以下命令clone项目到本地:

git clone http://192.168.3.101:1080/macrozheng/hello.git

提交代码

进入项目目录,修改一下README.md并提交:

# 进入项目工程目录
cd hello/
# 将当前修改的文件添加到暂存区
git add .
# 提交代码
git commit -m "first commit"

推送到远程仓库

git push

图片

拉取远程仓库代码

  • 在Gitlab上修改readme中的文件内容:

图片

  • 拉取代码:

git pull

本地创建并提交分支

# 切换并从当前分支创建一个dev分支
git checkout -b dev
# 将新创建的dev分支推送到远程仓库
git push origin dev

图片

其他常用命令

# 切换到dev分支
git checkout dev
# 查看本地仓库文件状况
git status
# 查看本地所有分支
git branch
# 查看提交记录
git log


更多相关文章

  1. 我的Github开源项目,从0到20000 Star!
  2. 如何写出优雅的开源项目文档
  3. 用Python模拟AlphaGo项目出现
  4. 一个有趣的360度照相机的开源项目:树莓派+OpenCV
  5. 2.docker容器管理、仓库管理、数据管理、数据卷备份恢复
  6. 从0开始搭建数据仓库(2):产品经理如何“玩转”Hive SQL
  7. 如何使用maven 轻松重构项目
  8. 为你Springboot项目自定义一个通用的异常(实用干货)
  9. 值得关注的5个Python开源项目

随机推荐

  1. GlusterFs 启动报错,调试方法和处理
  2. FreeMarker 概述
  3. 有了Python,我能叫出所有猫的名字
  4. Android(安卓)Studio查看Android(安卓)5.
  5. 排序算法 #6 快速排序
  6. 为什么要用Dubbo?
  7. Python字符串必备速查表.pdf
  8. 排序算法 #3 插入排序
  9. 给Python学习者的文件读写指南(含基础与进
  10. 每日前端夜话(0x02):ECMAScript 2016,2017