Gogs私服搭建

news2024/11/17 20:37:37

1. Gogs介绍


官网地址:https://gogs.io

文档地址:https://gogs.io/docs

在这里插入图片描述

Gogs,全称为Go Git Service,是一个基于 Go 语言开发的Git服务。它提供了一个类似于GitHub的界面和功能,允许您在自己的服务器上搭建私有的Git仓库和代码托管平台(类似gitlab)。

Gogs是一个轻量级的Git服务,其设计和性能优化使得它适合于小型团队和个人开发者。它具有Web界面,可以让您方便地管理和浏览仓库、处理问题、进行代码审查和管理团队成员。

以下是Gogs的一些主要特点:

  • 开源免费:Gogs以MIT许可证发布,可以免费自由地使用、修改和分发。
  • 轻量级:Gogs使用Go语言编写,易于部署和运行,在资源消耗方面占用较少的内存。
  • 快速和稳定:Gogs使用了一些性能优化措施来提升其响应速度和稳定性。
  • 易于使用:Gogs具有直观的用户界面,使得用户可以快速上手并进行版本控制和协作开发。
  • 集成功能:Gogs支持一些常见的功能,如问题跟踪、代码审查、Web钩子等。
  • 多种数据库支持:Gogs可以与多种常见的数据库进行集成,包括SQLite、MySQL和PostgreSQL等。
  • 支持扩展:Gogs有一个丰富的插件系统,允许用户根据自己的需求进行自定义扩展。

总之,Gogs是一个简单、易用且功能丰富的Git服务,适合小型团队和个人开发者在自己的服务器上构建私有的代码托管平台。


2. 使用Docker安装Gogs


常用命令:

# 下载镜像
docker pull gogs/gogs:0.12.0


# 启动容器
# 22是gogs容器内部的ssh服务端口、3000是gogs容器内部的应用服务端口,像10022、10880这样外部端口可以任意设置只要端口不冲突即可
# 注:别忘开放10022、10880端口,或者关闭防火墙
# /data目录:gogs后续的配置、git仓库等都会存储到这个目录中	
docker run -itd \
--name=gogs \
--restart=always \
--privileged \
-p 10022:22 \
-p 10880:3000 \
-v /home/gogs:/data \
gogs/gogs:0.12.0


# 停止gogs容器
docker stop gogs

# 运行gogs容器
docker start gogs

1、下载镜像
在这里插入图片描述

2、启动容器

在这里插入图片描述

3、查看容器日志: docker logs -f gogs

在这里插入图片描述

看起来也不算太吃内存。


3. 配置Gogs


1、浏览器访问Gogs私服:http://gogs仓库的ip:10880 (10880是gogs容器外部访问端口)

2、进行Gogs初始配置

① 数据库配置:

在这里插入图片描述

②、应用设置

在这里插入图片描述

③、管理员账号配置

输入管理员信息后,点击立即安装。
在这里插入图片描述


4. 使用Gogs


4.1 在私服上创建仓库


在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

使用方面就大同小异了,跟gitee和github非常相似。


扩展:克隆远程仓库指定分支下的代码

git clone gogs仓库ip地址/用户名/远程仓库名.git -b 分支名

在这里插入图片描述


4.2 将本地项目推送到Gogs仓库


1、IDEA打开一个现成的项目,并添加gogs远程仓库

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


2、添加到暂存区、提交版本库、推送到gogs上

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

首次提交gogs,需要登录一下gogs仓库账号密码:

在这里插入图片描述

在这里插入图片描述


最后在gogs私服上查看刚才推送的项目:

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/692310.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

幂律智能联合智谱AI发布千亿参数级法律垂直大模型PowerLawGLM

前言 2023年是当之无愧的“大模型之年”,据瑞银集团的一份报告显示,ChatGPT推出仅仅两个月后,月活用户已经突破了1亿,成为史上用户增长速度最快的消费级应用程序。 在炙热的大模型赛道里,基于中文大模型的发布也是层…

二叉树OJ题:LeetCode--104.二叉树的最大深度

朋友们、伙计们,我们又见面了,本期来给大家解读一下LeetCode中第104道二叉树OJ题,如果看完之后对你有一定的启发,那么请留下你的三连,祝大家心想事成! 数据结构与算法专栏:数据结构与算法 个 人…

SAP从入门到放弃系列之工艺路线-子工序-Part2

文章目录 概述使用场景子工序内容1、 维护工序控制码2、维护子工序的工资类型3、作业标准值4、用户定义字段5、通过维护子工序的作业类型数据后,点击汇总标准值,工序的作业类型值可以通过子工序进行累计6、可以设置子工序是否带入生产订单 注意事项&…

selenium通过xpath定位text换行的元素

DOM元素(该元素是换行的,不能通过普通xpath定位): 可使用下面xpath定位该div //div[./text()/following-sibling::text()"点" and ./text()"5"] 解释一下就是:定位“子节点的text是[5] 且 子节点…

自然语言处理(概念)

1、 RNN模型简介 1.2传统RNN模型 2、LSTM模型 3、GRU模型 5、注意力机制 6、人名分类器 7 、BERT 8、Transformer 的结构是什么样子的? 各个子模块有什么作用? 8.1 Encoder模块 8.2 Decoder模块 8.3 Transformer 结构中的Decoder端具体输入是什么&#…

C# wpf 附加属性实现任意控件拖动调整大小

摘自这里 https://blog.csdn.net/u013113678/article/details/121719278 调试效果如下 using System; using System.Collections.Generic; using System.Diagnostics; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows; using Syst…

vue修改数据后页面不重新渲染

使用vue&#xff0c;遇到几次修改了对象的属性后&#xff0c;页面并不重新渲染 一、直接添加属性的问题 <template><div><p v-for"(value,key) in item" :key"key">{{ value }}</p><button click"addProperty">…

【Linux】在Ubuntu下部署nginx——nginx的负载均衡

介绍 这里是小编成长之路的历程&#xff0c;也是小编的学习之路。希望和各位大佬们一起成长&#xff01; 以下为小编最喜欢的两句话&#xff1a; 要有最朴素的生活和最遥远的梦想&#xff0c;即使明天天寒地冻&#xff0c;山高水远&#xff0c;路远马亡。 一个人为什么要努力&a…

vs中的一些编码问题

1. 基本概念 文件编码格式 首先vs中编辑&#xff0c;保存文件实际上也是将文件内容以一定的编码格式存储。对于中文字符串 string s "一"; 按不同的编码格式保存后&#xff0c;通过16进制文件查看器&#xff0c;可以看到中文的编码是能对应上的。 开放高级保存…

select和pselect的关于信号打断的实验

select和pslect的man手册 SELECT(2) Linux Programmers Manual SELECT(2)NAMEselect, pselect, FD_CLR, FD_ISSET, FD_SET, FD_ZERO - synchronous I/O …

【HDFS实战】HDFS联合(联邦)集群的发展史

HDFS联合集群的发展史 文章目录 HDFS联合集群的发展史HDFS原始架构方案一 HDFS Federation方案二 ViewFs方案三 HDFS Router-based Federation常用命令常用配置RPC serverConnection to the NamenodesAdmin serverHTTP ServerState StoreRoutingNamenode monitoring 版本相关is…

nestJS打印多层对象以及铺平金额类型

console.dir(ret, { depth: 3 }); 金额是Decimal类型不好显示 Logger.verbose(JSON.stringify(ret, null, 2)); 利用JSON.stringify参数格式化 null: 不对数据进行提取&#xff0c; 2&#xff1a;缩进两个空格&#xff0c; 效果是直接帮忙平铺金额对象

java.lang.IllegalStateException Unable to find a @SpringBootConfiguration代码报错

文章目录 一. 问题场景二. 报错原因三. 解决方案 一. 问题场景 使用idea基于springBoot的项目进行单元测试时&#xff0c;出现异常&#xff0c;如下所示&#xff1a; Test ignored.java.lang.IllegalStateException: Unable to find a SpringBootConfiguration, you need to …

【电源专题】案例:电池保护芯片有是否能向0V电池充电的功能的区别

本案例发生在实际的工作之中。案例是这样的,有些产品因为各种原因没有按规范将电池与设备断开,而是插入机器(存在1mA的静态功耗)中并存放在仓库里2年后发现产品无法开机使用,并且电池无法充电。更换新的电池后运行正常,所以认定为是电池的问题。 可是为什么电池无法充电呢…

学妹:怎样才能设计出优秀的测试用例?

这篇文章我们主要聊一下测试工程师最通用的也是最根本的技能&#xff0c;测试用例的设计能力。 测试用例 测试用例是通过使用在测试计划中确定的测试技术&#xff0c;对于已确定的测试条件进行逐步推敲&#xff0c;精炼而设计出来的重点说明如何具体操作产生何种结果的文档。…

(免费分享)基于springboot,vue高校就业系统

管理员&#xff1a;10086/123 学生&#xff1a;10087/123 企业&#xff1a;10070/123 辅导员&#xff1a;10090/123 项目描述 高校就业管理系统 学生 : 个人信息、查看企业岗位信息、简历信息管理、我的应聘 辅导员 : 学生信息管理、三方协议书审核、查看班级就业统计信息 企…

App启动流程分析(一)

一、App启动涉及到的三个进程 1、Launcher进程&#xff1a;负责接收用户点击屏幕的事件&#xff0c;它其实就是一个Activity&#xff0c;屏幕上的各种Icon就是这个Activity中的Button&#xff0c;当点击Icon时&#xff0c;会触发启动App的流程。 2、SystemServer进程&#xff…

新手小白学JAVA_IDEA修改编辑与控制台字体大小

很多小白在刚刚使用IDEA的时候还不是很熟练 本文主要给大家提供一些使用的小技巧&#xff0c;希望能帮助到你 1.改变编辑窗口字体大小 1.1 将字体大小设置为固定值 我们可以将编辑窗口的字体大小设置为固定值 1.2 动态改变字体的大小 我们还可以通过Ctrl鼠标滚轮改变编辑窗口…

微信小程序怎么制作自己的小程序

小程序制作是指通过工具或开发语言制作微信平台上的小型应用程序&#xff0c;具有轻量、易用、无需下载安装等优点。随着移动互联网的飞速发展&#xff0c;小程序已经成为了各种企业和个人展示自己、提供服务的重要手段之一。 小程序制作的好处 小程序可以提高品牌曝光度。在…

SpringBoot + 规则引擎 URule,真的太强悍了!

一、背景 前段时间&#xff0c;在做项目重构的时候&#xff0c;遇到很多地方需要做很多的条件判断。当然可以用很多的if-else判断去解决&#xff0c;但是当时也不清楚怎么回事&#xff0c;就想玩点别的。于是乎&#xff0c;就去调研了规则引擎。 当然&#xff0c;市面上有很多…