安装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"

安装Go语言支持及Gogs版本管理工具的更多相关文章

  1. Go学习笔记(一)安装Go语言环境

    Go Go 是一个开源的编程语言,它能让构造简单.可靠且高效的软件变得容易. Go是从2007年末由Robert Griesemer, Rob Pike, Ken Thompson主持开发,后来还加入 ...

  2. Node.js的多版本管理工具 gnvm(win环境)的详细安装教程(图解步骤、通俗易懂、亲测有效)

    前言 本篇随笔主要写了如何安装并使用node多版本管理工具gnvm(windowns环境下) 作为自己对多版本工具gnvm知识的总结与笔记. 百度云盘gnvm应用程序包 获取链接(个人应用地址如下): ...

  3. VS2015提示:未安装Style的Visual Studio语言支持,代码编辑Intellisense将不可用。服务器控件的标记Intellisense可能不起作用

    一.问题 最近在VS2015打开文件,提示未安装Style的Visual Studio语言支持,代码编辑Intellisense将不可用.服务器控件的标记Intellisense可能不起作用. Int ...

  4. Mac OS安装Go语言及配置VSCode开发环境:一个工具(gopls)解千愁

    前言 截止到目前为止,Go语言已经更新到1.14.1,网上的很多教程均已经过时,我在此汇总并整理一下相关的教程,提供一个适合当下的Mac OS教程. 教程中使用了Go在1.11之后推出的依赖包管理工具 ...

  5. 版本管理工具Git(2)git的安装及使用

    下载安装git 官方下载地址:https://git-scm.com/download/win 这里以windows为例,选择正确的版本: 验证是否安装成功,右键菜单中会出现如下菜单: Git工作流程 ...

  6. Node版本管理工具-NVM的安装与使用(windows系统)

    友情提示:为避免踩坑,建议浏览全文后动手操作!!! 一.nvm是什么 看到这篇文章的猿/媛们肯定不会问这个问题了,但是我还是要说,哈哈哈! 无论工作还是干嘛,就不会一直做项目,所以肯定也不会一直用一个 ...

  7. Windows下完全卸载node.js并安装node.js的多版本管理工具nvm-windows

    前言 由于高版本的node.js导致gulp执行build命令失败,我需要在Windows下卸载掉已有的node.js并安装一个多版本管理工具nvm-windows,方便切换不同版本的node.js. ...

  8. 安装node版本管理工具之NVM

    nvm是个啥?nvm是一个可以让你在同一台机器上安装和切换不同版本node的工具. 你可能会问,为什么会有这个工具?有时候在开发的时候,对node版本有强制要求,有的要求用最新版本,有的要求用稳定版本 ...

  9. CentOS7安装桌面环境以及中文语言支持

    CentOS7 操作系统 http://public-yum.oracle.com/oracle-linux-isos.html ================================= 1 ...

随机推荐

  1. 基于区域的CNN(R-CNN)

    基于区域的CNN(R-CNN) Region-based CNNs (R-CNNs) 基于区域的卷积神经网络或具有CNN特征的区域(R-CNN)是一种将深度模型应用于目标检测的开创性方法.在本节中,将 ...

  2. 【NX二次开发】获取视图当前的剪辑边界UF_VIEW_ask_current_xy_clip()

    UF_VIEW_ask_current_xy_clip()这个函数网上还没有详细的说明,我花了一点时间,详细得理解了一下函数返回的4个值的意思,作为一个猜想,希望有人能验证一下. 获取视图当前的剪辑边 ...

  3. 怎么回答面试官:你对Spring的理解?

    最近看了点Spring的源码,正好来稍微扯一扯,帮一部分培训班的朋友撕开一道口子,透透气.我自己都是看的培训班视频,所以也算培训班出身吧.所以下文开口闭口"培训班",不要觉得是我在 ...

  4. Terraform入门教程,示例展示管理Docker和Kubernetes资源

    我最新最全的文章都在南瓜慢说 www.pkslow.com,欢迎大家来喝茶! 1 简介 最近工作中用到了Terraform,权当学习记录一下,希望能帮助到其它人. Terraform系列文章如下: T ...

  5. CentOS-Docker搭建Kafka(单点,含:zookeeper、kafka-manager)

    Docker搭建Kafka(单点,含:zookeeper.kafka-manager) 下载相关容器 $ docker pull wurstmeister/zookeeper $ docker pul ...

  6. <mvc:default-servlet-handler/>导致controller失效,报404错误

    最近在做ssm框架整合的一个小项目时,页面跳转一直有404错误,也没有报错提示.然后一步一步去找,终于发现是<mvc:default-servlet-handler/>的原因.如下图所示, ...

  7. mysql binlog恢复数据实战

    在前面,我们了解了mysql binlog日志的作用以及使用方法:  http://www.php20.cn/article/237 在后面讲到了,可以通过binlog进行恢复数据,那么,具体步骤是怎 ...

  8. XCTF WEB backup

    不用多说,肯定是扫描后台,目录看看能不能找到备份文件,(可恶我的御剑的字典太菜了,居然爆破不出来),建议大家装御剑高一些的版本,或者用dirsearch来扫描,都是不错的. 这里插个知识点,备份文件常 ...

  9. ROS2学习之旅(4)——理解ROS2 Graph中的节点

    ROS(2)图(ROS(2) graph)是一个同时处理数据的基于ROS2元素的网络,它包含了所有的可执行文件以及它们之间的连接.图中的基本元素包括:节点(nodes).话题(topics).服务(s ...

  10. 长按短按控制LED灯-ESP32中断处理

    #include <stdio.h> #include <string.h> #include <stdlib.h> #include "freertos ...