安装Go语言支持及Gogs版本管理工具

1. GO 语言:

1.1 介绍

1.1.1 官方介绍:

The Go programming language is an open source project to make programmers more productive.

Go is expressive, concise, clean, and efficient. Its concurrency mechanisms make it easy to write programs that get the most out of multicore and networked machines, while its novel type system enables flexible and modular program construction. Go compiles quickly to machine code yet has the convenience of garbage collection and the power of run-time reflection. It's a fast, statically typed, compiled language that feels like a dynamically typed, interpreted language.

1.1.2 简单说:

Go 是 Google 家的一门速度快,体验好的新语言。可以在不损失应用程序性能的情况下降低代码的复杂性。

由于专门针对多处理器系统应用程序的编程进行了优化,Go 程序在速度上可以媲美 C 或 C++,而且安全、支持并行。

1.2 安装

1.2.1 下载:

官网

官方下载

官方文档

由于我的服务器是 Ubuntu 的,所以我选择的是 go1.9.2.linux-amd64.tar.gz 这个包。

1.2.2 安装:

安装相当简单,直接下载到安装包后解压到 /usr/local/go 目录下就行了:

sudo tar -C /usr/local/ -zxvf go1.9.2.linux-amd64.tar.gz

文件到位后打开 /etc/profile 加点环境变量进去:

# /etc/profile

export GOROOT=/usr/local/go
export PATH=$GOROOT/bin:$PATH

使配置生效:

source /etc/profile

接着直接在shell中打 go version 应该就可以看见输出的版本号了:

$ go version
go1.9.2 linux/amd64

到此,GO 语言的环境就安装好了。接下来是 Gogs.

2. Gogs

2.1 介绍

2.1.1 官方介绍
一款极易搭建的自助 Git 服务。
2.1.2 简单说:

Gogs 是个极轻的基于 Git 的版本控制工具,类似于Github, Gitlab.

但是相比他们要轻量很多,用块 Raspberry Pi 甚至 NAS 主机都能跑。

所谓的:易安装 + 跨平台 + 轻量级

项目所有的源代码均通过 MIT 授权协议 托管在 GitHub 上。免费使用!

到目前为止已经 2w 多 Stars 了,可见一斑。

2.2 安装:

2.2.1 下载:

直接官网下载:(国人产品,是中文的官网)

中文官方

官方下载

在线体验

2.2.2 安装:

将下载好的 linux_amd64-gogs.zip 文件解压。并放置到你想要放的地方,比如说 /www/gogs

然后根据你自己的需求,对它进行配置,默认配置文件 conf/app.ini 不要改它,在程序目录下创建新文件 custom/conf/app.ini 并修改相应的配置项就会自动覆盖掉默认的配置了。

付上 官方配置手册

程序本身提供了多种部署和启动的方式,这里我们选择最简单的:直接运行:

创建 run_gogs 脚本,写入以下内容:

nohup /www/gogs/gogs web &

然后运行 sh ./run_gogs 即可。

如果你需要也可以使用像 supervisor 去管理它:

官方参考配置

[program:gogs]
directory=/www/gogs/
command=/www/gogs/gogs web
autostart=true
autorestart=true
startsecs=10
stdout_logfile=/var/log/gogs/stdout.log
stdout_logfile_maxbytes=1MB
stdout_logfile_backups=10
stdout_capture_maxbytes=1MB
stderr_logfile=/var/log/gogs/stderr.log
stderr_logfile_maxbytes=1MB
stderr_logfile_backups=10
stderr_capture_maxbytes=1MB
user = git
environment = HOME="/home/git", USER="git"

阿兵
7 声望2 粉丝