windows 下搭建 git 服务器 gogs

本文基于 windows7 64位 搭建 gogs

gogs 官方文档地址:https://gogs.io/docs
软件下载地址:https://dl.gogs.io/

环境要求

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

所需软件

  • 必须软件
    • NSSM
    • git 最好下载最新版
    • MySQL 官方说的是版本需要大于5.7,我的版本是 5.5.3 发现也并无影响。但是存储引擎一定要使用:INNODB! 此时的版本为5.5.3
    • gogs软件包 windows-64位版本

安装

  1. 将下载的 gogs_0.11.86_windows_amd64.zip 压缩包文件解压。

    本文解压在 E:\soft-exe 目录下

解压出来是 gogs 文件夹

  1. 创建数据库

    可以直接去执行 E:\soft-exe\gogs\scripts\mysql.sql 文件,创建 gogs 数据库。(当然也可以自己去创建数据库名为 gogs 的数据库,但是建议还是直接执行 mysql.sql 脚本,毕竟官方建议)

mysql.sql 中的内容为以下:

SET GLOBAL innodb_file_per_table = ON,
           innodb_file_format = Barracuda,
           innodb_large_prefix = ON;
DROP DATABASE IF EXISTS gogs;
CREATE DATABASE IF NOT EXISTS gogs CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
  1. 安装 git 这个貌似没有什么太多需要讲的,直接根据上面提供的链接地址下载 git 最新版,之后一直下一步安装即可。
  2. 注册 gogs 服务
    • 修改 E:\soft-exe\gogs\scripts\windows\install-as-service.bat ,将其中的
      SET gogspath=C:/gogs

      修改成你本地的 gogs 安装路径。

找到 install-as-service.bat 文件

修改 gogspath 的值为 gogs.exe 所在文件路径

  • 解压缩 nssm 压缩包。

以上为解压缩 nssm 之后的状态

将 nssm.exe 文件所在文件绝对路径加入到系统环境变量中

  • 以管理员权限运行 install-as-service.bat

对着 install-as-service.bat 文件鼠标右击,以管理员权限执行

同样也可以使用手动执行命令去执行 install-as-service.bat 文件
手动执行命令的方法为:在 install-as-service.bat 文件所在文件夹下,随便点击一下空白处,然后按住 shift键,点击鼠标右键,点击 在此处打开命令窗口 输入 gogs web 命令,回车即可。

  1. 测试 浏览器访问:127.0.0.1:3000 即可进入配置页面(我只修改了代码仓库存放路径这一项)。(在此页面并不一定非要注册用户,我测试的时候,虽然注册了一个用户,但是最后发现还是需要再重新注册)完成配置后,E:\soft-exe\gogs\custom\conf 目录下会生成一个新的 app.ini 配置文件。

E:\soft-exe\gogs\custom\conf 路径下生成了 app.ini 配置文件

打开 app.ini 配置文件,发现里面的内容为在浏览器中输入的内容

  1. 注册用户(系统默认第一个用户为系统管理员) 再次访问 127.0.0.1:3000 ,点击注册。

我本地测试的电脑未安装 .net 框架,因此样式乱掉了

  1. 创建测试仓库

image.png