使用Gogs搭建Git服务器
Git现在基本上已经代替SVN成为主流的源码管理工具了,我在之前的文章使用GIT进行源码管理——GIT托管服务中介绍过一些国内外的主流在线Git服务,虽然这些在线的Git服务大多非常好用,但是有的时候我们也还是需要搭建自己的Git服务器的,例如企业内部的源码管理或者个人的私人源码管理。
之前在公司使用过GitLab搭建过Git服务器,GitLab本身是非常好用的,但是,在一些轻量级的应用(如人的源码管理服务器)的场景下,搭建和使用过程显得有些复杂了。今天我在这里要给大家介绍另一个简单易用的Git服务器Gogs。
Gogs是一个使用Go语言编写的Git服务器,它可以运行在任何 Go 语言 支持的平台,包括 Windows、Mac、Linux 以及 ARM。基本上是一个跨平台的服务器了。例如我平常大部分的时候是工作在Windows平台的,如果想把我本地的一些代码进行管理的话,如果要用GitLab,使用的时候还需要附个虚拟机,显得非常麻烦。这里我就介绍下在Windows平台如何安装和使用Gogs搭建一个Git服务器。
从官网的安装说明来看,它需要如下的环境:
- 数据库,支持MySQL,PostgreSQL,或者什么都不安装(此时可以选择SQLite 或 TiDB)
- Git(bash)
- SSH服务器,如果只用Http可以不安装
可以看到,如果最简化安装,只需要按照以下Git bash即可。由于我的电脑上之前已经安装了Git,它的安装在Windows平台上基本上一路向下即可,这里就不介绍了。
基本环境准备好后,首先到下载它的安装包,为了简单,这里我直接下载的二进制安装包。解压后可以看到一个gogs.exe文件。使用启动参数 web启动它:
Gogs web
可以看到如下如下画面:

然后根据提示信息,启动浏览器,输入 http://localhost:3000 ,此时即可看到安装界面:

这里我没有安装任何数据库,因此选择的是Sqlite,其它大部分基本上都是选填的,必填的基本上都已经给填好了,对于个人用户,基本上直接点击"立即安装"即可。我这里换了一下仓库的路径,其它的都没有改。这样就已经安装好了,可以直接使用了。直接注册账号即可使用。

安装方式非常简单,基本上一步即可搞定。如果需要更多高级配置,请参看官方说明:配置与运行。
这种方式下,每次启动都要执行"Gogs web"命令,关闭这个exe程序服务器即刻停止,对于个人用户来说这种方式是非常方便的,因为Git对网络依赖性不大,往往只是需要pull或push的时候才需要,此时开启服务即可,用完后关闭,不占用资源。
但是,有的时候,我们希望git服务器是长期运行的(如小型团队内的代码服务器),如果用windows控制台程序很容易不小心被关掉了。一般来讲,团队长期使用的时候,部署在Linux系统上更为合适,如果非要部署在Windows上,可以通过miniwinsvc之类的程序将其封装为服务,官方也有文章介绍了这一方法。
使用Gogs搭建Git服务器的更多相关文章
- Windows 使用 Gogs 搭建 Git 服务器(转)
Windows 使用 Gogs 搭建 Git 服务器 随便说两句 之前有使用 Gitblit 在Windows搭建Git服务器,用的也挺好的,可能安装起来略麻烦一点.现在全用 Gogs 在wind ...
- Windows 使用 Gogs 搭建 Git 服务器
随便说两句 之前有使用 Gitblit 在Windows搭建Git服务器,用的也挺好的,可能安装起来略麻烦一点.现在全用 Gogs 在windows搭建Git服务器,主要是因界面好看,管理更方便一些. ...
- centos7使用Gogs搭建Git服务器
一.初次接触Gogs,记录一下搭建过程 二.平台环境 Linux: CentOS7.5.1804 MySQL: 5.6.35 安装步骤: linux服务器新建git用户: 下载.解压gogs安装包: ...
- Centos7使用Docker安装Gogs搭建git服务器
gihub地址:https://github.com/gogs/gogs gogs官网:https://gogs.io/ gihub官方docker安装gogs方法:https://github.co ...
- 用gogs搭建git服务器
Gogs 是一款极易搭建的自助 Git 服务. Gogs 的目标是打造一个最简单.最快速和最轻松的方式搭建自助 Git 服务.使用 Go 语言开发使得 Gogs 能够通过独立的二进制分发,并且支持 G ...
- Centos7 用gogs搭建git仓库
0.安装步骤 先安装依赖,然后创建数据库,创建git用户,安装Gogs软件,设置启动,访问web界面进行配置 一.Gogs依赖环境 安装Gogs之前需要配置相应的依赖环境,官网介绍的依赖环境如下: 数 ...
- 搭建Git服务器
在远程仓库一节中,我们讲了远程仓库实际上和本地仓库没啥不同,纯粹为了7x24小时开机并交换大家的修改. GitHub就是一个免费托管开源代码的远程仓库.但是对于某些视源代码如生命的商业公司来说,既不想 ...
- Git学习笔记(10)——搭建Git服务器
本文主要记录了Git服务器的搭建,以及一些其他的配置,和最后的小总结. Git远程仓库服务器 其实远程仓库和本地仓库没啥不同,远程仓库只是每天24小时开机为大家服务,所以叫做服务器.我们完全可以把自己 ...
- centos 搭建git服务器
centos 6搭建git服务器 安装 rpm -ivh http://mirrors.aliyun.com/epel/epel-release-latest-6.noarch.rpm yum ins ...
随机推荐
- js中的replace全局替换
比如想把str中的所有“&”替换成“&” replace (\&\,"&");只是替换第一个,那么怎么全部都替换呢? replace(new Reg ...
- linux for循环更改文件名字
#!/bin/bash # for a in CentOS-Base.repo CentOS-Debuginfo.repo CentOS-Media.repo CentOS-Vault.repo Ce ...
- 关于QFTP乱码
// 从FTP接收的内容QString FtpUtil::_FromSpecialEncoding(const QString &InputStr){ #ifdef Q_OS_WIN retu ...
- mac版微信web开发者工具(小程序开发工具)无法显示二维码 解决方案
微信小程序概念的提出,绝对可以算得上中国IT界惊天动地的一件大事,这可能意味着一场新的开发热潮即将到来, 我也怀着激动的心情准备全身心投入其中,不过截止目前,在官方网站上下载的最新版本都无法使用,打开 ...
- mybatis实战教程(mybatis in action)之二:以接口的方式编程
前面一章,已经搭建好了eclipse,mybatis,mysql的环境,并且实现了一个简单的查询.请注意,这种方式是用SqlSession实例来直接执行已映射的SQL语句:session.select ...
- Files 的值“ < < < < < < < .mine”无效。路径中具有非法字符。
出现这个问题的原因是,用svn时,发生了冲突.解决方法:先解决代码冲突,然后在你的工程OBJ/DEBUG目录下,找到 工程名.csproj.FileListAbsolute.txt的文件打开并删除含有 ...
- sql查询工程结算分包款转出
总一 借工程结算负数 贷工程结算对冲问题 oralce使用聚合函数wmsys.wm_concat字段显示 clob :应该是,10.2.0.4以前,是varchar2,10.2.0.5开始,是CLOB ...
- CentOS 下 sftp 有人能连有人不能连 程序设定了禁用IP
问题现象: 局域网的一台Linux上运行有sftp Server. 大家用FileZilia 连接,有两个人能够连接,有两个人不能连接. 解决问题: 1.先查看服务器上的sftp server是哪一个 ...
- 关于NGINX的502的装逼打怪之路
写日志之前先copy一段nginx502的原因,从某网看到如下,然而这并不是重点,最重要还是看博主手敲的东西. 一.NGINX 502错误排查 NGINX 502 Bad Gateway错误是Fast ...
- Caffe使用:如何将一维数据或其他非图像数据转换成lmdb
caffe事儿真多,数据必须得lmdb或者leveldb什么的才行,如果数据是图片的话,那用caffe自带的convert_image.cpp就行,但如果不是图片,就得自己写程序了.我也不是计算机专业 ...