不用gitlab快速搭建一个Git服务——分享用Gogs搭建Git服务的经历超级好用!

一、为什么选了Gogs作Git服务?

        最近公司由于一台用于git私有仓的服务器时间太长,考虑更换该台即将到期的服务器,加上公司近来业绩不佳,相关运维人员离职,时间又紧,决定自己另一台服务器上安装git服务器,第一选择依然是gitlab

        随即在服务器宝塔中找到了两个地方可以快捷安装,一个是在docker下,另一个在软件商店内,搜索git很容易找到gitlab的安装,。看似一切顺利,依次试了两种方式多次均提示成功,但无论如何都启动不起来,总出现以下错误提示:

        经查发现由于缺失相关组件造成,在安装“yum install -y curl policycoreutils-python openssh-server”时出现无法连接的状况,与阿里沟通后,让选国内源。

        之前就听说个国内一位大佬开发过一套git服务器,当时没怎么在意,现在想来不容干脆放弃gitlab,换成那一套算了,反正公司用git也没必要用太多功能,就是个代码的协同而已。于是回忆搜索一番,终于找到了那位大佬写的gitlab替代品gogs,完全开源且免费,非常小巧。

        详细看了下介绍、使用说明和代码,甚是满意,代码用golang写成,有二进制版,可以直接运行使用,实在是太棒了,几分钟就搭建起来了,也推荐各种技术朋友选择。

        安装后截图如下,直接显示了该软件的介绍:

二、几分钟就装上了Git服务!

1、安装Gogs

        Gogs官方是这样介绍自己的“Gogs 是一款极易搭建的自助 Git 服务。Gogs 的目标是打造一个最简单、最快速和最轻松的方式搭建自助 Git 服务。使用 Go 语言开发使得 Gogs 能够通过独立的二进制分发,并且支持 Go 语言支持的 所有平台,包括 Linux、Mac OS X、Windows 以及 ARM 平台。”

        使用后,果真一样,确实非常简单,前后就只用了几分钟就搞定了,实在是比gitlab爽很多,还不用占用太多不必要的资源。因为我并未考虑改太多东西,所以直接选择了二进制方式进行安装。

前提条件:

  • 数据库(选择以下一项):
    • MySQL:版本 >= 5.7
    • PostgreSQL
    • TiDB(实验性支持,使用 MySQL 协议连接)
    • 或者 什么都不安装 直接使用 SQLite3
  • git(bash):
    • 服务端和客户端均需版本 >= 1.8.3
    • Windows 系统建议使用最新版
  • SSH 服务器:
    • 如果您只使用 HTTP/HTTPS 的话请忽略此项
    • 如果您选择在 Windows 系统使用内置 SSH 服务器,请确保添加 ssh-keygen 到您的 %PATH% 环境变量中
    • 推荐 Windows 系统使用 Cygwin OpenSSH 或 Copssh
    • Windows 系统 请确保 Bash 是默认的 Shell 程序,而不是 PowerShell

        幸运的是我的服务器上述条件均已必备,因此下载了适合我的Gogs二进制包,上传、解压,直接搞定。

安装步骤:

  1. 根据服务器配置从下载列表中选择适合的二进制包,上传到服务器某目录中。
  2. 在MySQL或其他可支持的数据库类型中新建空数据库gogs。
  3. 解压压缩包。
  4. 使用命令 cd 进入到刚刚创建的目录。
  5. 执行命令 ./gogs web
  6. Gogs 默认会在端口 3000 启动 HTTP 服务,访问 /install 以进行初始配置(例如 http://localhost:3000/install )。
  7. 安装配置完成后,打开 http://localhost:3000/ 即可看到系统首页。

        建议按官方说明搞成“系统服务”,我这里选择用了 systemd 模式,方便自动启动。

2、下载Gogs

        本页仅展示Gogs最新版的二进制,gogs源码版和其他版本,请到Gogs官网查看:gogs.io

0.13.0 @ 2023-02-25

系统名称系统类型SQLitePAM下载 (GitHub)
Linux386HTTPS: ZIP | TAR.GZ
Linuxamd64HTTPS: ZIP | TAR.GZ
Linuxarmv7HTTPS: ZIP | TAR.GZ
Linuxarmv8HTTPS: ZIP | TAR.GZ
Windowsamd64HTTPS: ZIP | ZIP w/ mws
macOSamd64HTTPS: ZIP
macOSarm64HTTPS: ZIP

三、小改一下界面样式感觉更佳!

        默认启动后进入的是gogs的产品介绍,而且主体宽度适配的1024分辨率,为了更加友好,决定对界面进行适当改动。按照Gogs官方说明,可以自定义界面模板和相关样式。

        我这里只对页面中间主体内容宽度和首页内容做了调整。

1、首先从官方最新版代码


/ (gogs.io)icon-default.png?t=N7T8https://dl.gogs.io/

2、解压找到我们需要的文件目录

3、上传代码到gogs的安装目录下

        将public、templates两个目录上传覆盖调custom下的同名名录。

4、修改Gogs(Git)界面主体宽度

        打开public/gogs.min.css文件,默认为压缩的格式,最好用css格式化工具进行格式化。以下是格式化后,找到第13行、第17行,将其中的宽度修改为1200px,您也可以根据自己的需要修改。

        

5、修改Gogs首页内容

        打开templates/home.tmpl文件,根据自己的需要修改内容即可。我这里注释掉了gog介绍,保留了版权链接声明。

6、修改代码仓列表布局

        样式文件修改后,会对“发现”页中的布局产生些许影响,这里需要进行修改。打开templates/explore/repos.tmpl、repos_list.tmpl两个文件。按照以下内容进行修改:

7、重启Gogs看效果

我这里将 systemctl restart gogs.service 写到了 restart.sh 中,方便快速重启

        作者也对界面中的logo、banner、尾部、头部等稍微做了相关修改,成品效果如下:

        感觉这样就更简洁,更亲切了,也更适合团队内部使用。后面看看哪里不太舒服,也继续进行调整啦。

        再说一句,针对比gitlab简单好用太多了!

        

四、小改代码分享

        如果您觉得对本文中小改gogs的界面效果不错,想拿着直接用,本人把自己改的界面的相关代码放在了开放仓库里,您可以去下载直接使用哈。

jogit: Jogit 一款轻量级的git服务器端程序,基于Gogs修改而来,将持续修改UI以优化视觉,提供便捷自助搭建Git服务。 本仓目前只提供UI模板及配置相关文件。 (gitee.com)icon-default.png?t=N7T8https://gitee.com/duihao/jogit

        还有别忘了给本文和代码仓点个赞赞哦,给作者个小小的鼓励吧!

        非常感谢CSDN这个平台给了我一个学习和分享的机会,让我们一起为CSDN点赞👍👍👍。

  • 24
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值