Linux下搭建Git仓库详细教程(Gogs系列)

创作不易,如果觉得这篇文章对你有帮助,欢迎各位老铁点个赞呗,您的支持是我创作的最大动力!

1 前言

最近两年,越来越多的公司倾向于使用Git作为项目版本控制工具,相比较svn而言,还是会便利一些,尤其是Git强大的分支管理。这里笔者建议使用Gogs搭建轻量级的Git仓库,当然啦,如果服务器配置足够好,搭建GitLab也是不错的选择。

2 Git仓库有哪些

Git仓库一般是指远程仓库,而不是我们自己机器上的本地仓库,常见的Git仓库种类有:

3 为什么要搭建私有Git仓库

公司里,为了更好地进行团队协作,通常会划分不同的项目小组,每个小组,负责不同的项目。而项目多的时候,就需要有一个好用的项目版本控制工具,Git就是一个很好的项目版本控制工具。

一般来说,公司的项目对外都是保密的,所以需要有一个私有的项目管理工具,这时候Gogs就派上用场了,相比较GitLab,更加的轻量级,方便。

4 什么是Gogs

Gogs是一个使用Go语言写的,轻量级的Git代码版本控制仓库,可以利用该软件搭建一套公司内部的Git仓库环境,供公司内部,各开发部门各个项目小组使用。

5 搭建Git仓库(Gogs搭建)

5.1 环境要求

笔者这里,使用MySQL数据库,搭建Gogs仓库环境。

5.1.1 数据库(选择以下中的任意一项):

  • MySQL:版本 >= 5.7
  • PostgreSQL
  • TiDB(实验性支持,使用 MySQL 协议连接)
  • 或者 什么都不安装 直接使用 SQLite3

5.1.2 git(bash):

服务端和客户端均需版本 >= 1.8.3
Windows 系统建议使用最新版

5.1.3 SSH 服务器:

如果您只使用 HTTP/HTTPS 的话请忽略此项
如果您选择在 Windows 系统使用内置 SSH 服务器,请确保添加 ssh-****** 到您的 %PATH% 环境变量中
推荐 Windows 系统使用 Cygwin OpenSSH 或 Copssh
Windows 系统 请确保 Bash 是默认的 Shell 程序,而不是 PowerShell

5.2 搭建Gogs步骤

5.2.1 Linux中安装一个MySQL

如果没有MySql环境的老铁们,可以参考我的博客:Linux下安装MySQL详细教程

把MySQL启动起来,并且在MySQL数据库上创建gogs数据库,不用创建表

5.2.2 Linux上安装Git

Gogs需要Linux安装了git,可以执行 git --version命令,看一下是否有git环境,如果提示-bash: git: command not found找不到命令,说明没有安装git。

这里为了简单,使用yum安装方式,执行以下命令:
yum install git -y
Linux下搭建Git仓库详细教程(Gogs系列)
出现以上红框所示信息,说明git环境配置成功。

5.2.3 Linux安装gogs

官网给出了两种方式:二进制安装源码安装,笔者这里使用二进制安装。

二进制方式安装:
下载tar.gz包:https://dl.gogs.io/0.11.91/gogs_0.11.91_linux_amd64.tar.gz
Linux下搭建Git仓库详细教程(Gogs系列)

下载Gogs包,把下载的tar.gz包上传到服务器,然后解压缩,解压缩之后就安装完成。
tar -zxvf gogs_0.11.91_linux_amd64.tar.gz -C /usr/local/

安装后的目录结构:
Linux下搭建Git仓库详细教程(Gogs系列)

5.2.4 启动Gogs

  • 切换到安装目录
    使用命令: cd /usr/local/gogs

  • 启动
    使用命令:./gogs web > ./gogs.log &
    也可以使用命令:nohup ./gogs web > ./gogs.log &
    nohup是把命令的启动日志默认输出到一个nohup.out文件

    启动时添加了一个重定向 > ./gogs.log,把日志信息重定向输出到./gogs.log,方便以后分析日志。

    通过gogs.log文件,可以查看启动日志,使用命令:
    cat gogs.log
    Linux下搭建Git仓库详细教程(Gogs系列)

  • 检查是否启动成功
    使用命令:ps -ef | grep gogs
    Linux下搭建Git仓库详细教程(Gogs系列)
    有gogs进程,说明启动Gogs成功。

5.2.5 第一次访问需要按向导配置一下

访问:http://ip:3000

访问时,有可能访问不到,如果是阿里云服务,需要配置安全组:
Linux下搭建Git仓库详细教程(Gogs系列)

如果你的服务器或者虚拟机开启了防火墙,需要开放3000端口:

  • 开启多个防火墙端口
    firewall-cmd --zone=public --add-port=8080-8088/tcp --permanent

  • 重新加载防火墙配置
    firewall-cmd --reload

第一次访问时,需要配置Gogs:http://ip:3000/install,可以按向导,根据公司实际需求,配置即可。
Linux下搭建Git仓库详细教程(Gogs系列)
Linux下搭建Git仓库详细教程(Gogs系列)

注意:要保证MySQL服务启动成功了

至此,简单的Git仓库环境-Gogs就安装完成了,童鞋们,可以去玩耍了。
Linux下搭建Git仓库详细教程(Gogs系列)

参考链接:Gogs官网

写博客是为了记住自己容易忘记的东西,另外也是对自己工作的总结,希望尽自己的努力,做到更好,大家一起努力进步!

如果有什么问题,欢迎大家一起探讨,代码如有问题,欢迎各位大神指正!

给自己的梦想添加一双翅膀,让它可以在天空中*自在的飞翔!