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服务器。

官网的安装说明来看,它需要如下的环境:

  1. 数据库,支持MySQLPostgreSQL,或者什么都不安装(此时可以选择SQLite 或 TiDB)
  2. Git(bash)
  3. 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服务器的更多相关文章

  1. Windows 使用 Gogs 搭建 Git 服务器(转)

    Windows 使用 Gogs 搭建 Git 服务器   随便说两句 之前有使用 Gitblit 在Windows搭建Git服务器,用的也挺好的,可能安装起来略麻烦一点.现在全用 Gogs 在wind ...

  2. Windows 使用 Gogs 搭建 Git 服务器

    随便说两句 之前有使用 Gitblit 在Windows搭建Git服务器,用的也挺好的,可能安装起来略麻烦一点.现在全用 Gogs 在windows搭建Git服务器,主要是因界面好看,管理更方便一些. ...

  3. centos7使用Gogs搭建Git服务器

    一.初次接触Gogs,记录一下搭建过程 二.平台环境 Linux: CentOS7.5.1804 MySQL: 5.6.35 安装步骤: linux服务器新建git用户: 下载.解压gogs安装包: ...

  4. Centos7使用Docker安装Gogs搭建git服务器

    gihub地址:https://github.com/gogs/gogs gogs官网:https://gogs.io/ gihub官方docker安装gogs方法:https://github.co ...

  5. 用gogs搭建git服务器

    Gogs 是一款极易搭建的自助 Git 服务. Gogs 的目标是打造一个最简单.最快速和最轻松的方式搭建自助 Git 服务.使用 Go 语言开发使得 Gogs 能够通过独立的二进制分发,并且支持 G ...

  6. Centos7 用gogs搭建git仓库

    0.安装步骤 先安装依赖,然后创建数据库,创建git用户,安装Gogs软件,设置启动,访问web界面进行配置 一.Gogs依赖环境 安装Gogs之前需要配置相应的依赖环境,官网介绍的依赖环境如下: 数 ...

  7. 搭建Git服务器

    在远程仓库一节中,我们讲了远程仓库实际上和本地仓库没啥不同,纯粹为了7x24小时开机并交换大家的修改. GitHub就是一个免费托管开源代码的远程仓库.但是对于某些视源代码如生命的商业公司来说,既不想 ...

  8. Git学习笔记(10)——搭建Git服务器

    本文主要记录了Git服务器的搭建,以及一些其他的配置,和最后的小总结. Git远程仓库服务器 其实远程仓库和本地仓库没啥不同,远程仓库只是每天24小时开机为大家服务,所以叫做服务器.我们完全可以把自己 ...

  9. centos 搭建git服务器

    centos 6搭建git服务器 安装 rpm -ivh http://mirrors.aliyun.com/epel/epel-release-latest-6.noarch.rpm yum ins ...

随机推荐

  1. 为什么上传文件的表单里面要加一个属性enctype=multipart/form-data?

    首先知道enctype这个属性管理的是表单的MIME编码.共有三个值可选:1.application/x-www-form-urlencoded2.multipart/form-data3.text/ ...

  2. python中import和from...import区别

    在python用import或者from...import来导入相应的模块.模块其实就是一些函数和类的集合文件,它能实现一些相应的功能,当我们需要使用这些功能的时候,直接把相应的模块导入到我们的程序中 ...

  3. [Linux] - 攻击查看与IP查封

    查看80端口的连接数 netstat -nat|grep -i "|wc -l 查看Nginx的日志命令 tail -f access.log 统计IP访问数 awk '{aaa[$1]++ ...

  4. Rails : css或js文件无法成功预编译或调用jquery类插件时预编译问题

    调用bootstrap css框架时,将bootstrap文件夹放入 vendor/assets/下 bootstrap文件结构如下:    [shenma@localhost demo]$ ls v ...

  5. MyEclipse、Eclipse复制web项目

    假设现在已经有一个Java Web项目 ProjectA,现在想做另外一个项目ProjectB,它里面绝大部分功能和结构都可以复用ProjectA中的: 我们就可以通过复制项目的方法来做,具体步骤如下 ...

  6. c++ operator操作符的两种用法:重载和隐式类型转换,string转其他基本数据类型的简洁实现string_cast

    C++中的operator主要有两个作用,一是操作符的重载,一是自定义对象类型的隐式转换.对于操作符的重载,许多人都不陌生,但是估计不少人都不太熟悉operator的第二种用法,即自定义对象类型的隐式 ...

  7. 02shell编程环境的搭建

    02shell编程环境的搭建 [02]Shell编程 02shell编程环境的搭建 在不同的操作系统上搭建shell编程环境 Linux Windows Mac 编辑器的选择 系统环境的搭建 注: 选 ...

  8. 数据挖掘之决策树ID3算法(C#实现)

    决策树是一种非常经典的分类器,它的作用原理有点类似于我们玩的猜谜游戏.比如猜一个动物: 问:这个动物是陆生动物吗? 答:是的. 问:这个动物有鳃吗? 答:没有. 这样的两个问题顺序就有些颠倒,因为一般 ...

  9. C#开发分享:如何改变系统鼠标样式

    开发过程中发现需要用到改变鼠标样式(就是光标的样子),但是在网上找了很多资料,都是介绍在程序中使用,我需要的效果时在系统级使用.现在找到了,分享给大家. [DllImport("user32 ...

  10. 在线开发工具helper

    发现一个很有用的在线工具大全:http://tool.lu/ 同时,欢迎查看新开i云轩工作室: logo在线制作:http://www.uugai.com/