运维 在Windows上搭建小型Git服务

文章目录

  • 1、Git选型
    • 1.1、主要特性
    • 1.2、代码管理
    • 1.3、工单管理
    • 1.4、Pull/Merge requests
    • 1.5、第三方集成
    • 1.6、选型结论
  • 2、环境搭建
    • 2.1、Gitea下载
    • 2.2、Gitea安装
    • 2.3、配置服务信息
    • 2.4、运行服务
    • 2.5、注册Gitea为服务
    • 2.6、正常使用

1、Git选型

1.1、主要特性

在这里插入图片描述

1.2、代码管理

在这里插入图片描述

1.3、工单管理

在这里插入图片描述

1.4、Pull/Merge requests

在这里插入图片描述

1.5、第三方集成

在这里插入图片描述

1.6、选型结论

综上,选择了Gitea作为Git服务器。Gitea是采用Go作为后端语言,并且他还支持跨平台,支持 Linux、macOS 和 Windows 以及各种架构,除了x86,amd64,还包括 ARM 和 PowerPC。后期如果购买服务器,做数据移植也方便。Gitea一个git管理工具,类似构建自己的github,但是github仓库需要公开要私有付费,国内的码云gitee免费也有一定的限制,而且是线上的。我们可以通过Gitea在局域网管理自己的项目代码。

2、环境搭建

2.1、Gitea下载

Gitea官网地址:https://about.gitea.com/
在这里插入图片描述
下载地址:https://dl.gitea.com/
以 1.20.5 版本为例,进行搭建。选择对应的操作系统包,这里选择windows 64位操作系统。
在这里插入图片描述

2.2、Gitea安装

建议在非系统盘新建一个文件夹,比如:服务器gitea。再在 服务器gitea文件夹下存放Gitea软件,然后在此文件夹下新建data文件夹。
在这里插入图片描述
双击运行可执行程序
在这里插入图片描述

2.3、配置服务信息

软件启动之后我们打开浏览器,输入http://localhost:3000/,会出现登录界面,点击登录
在这里插入图片描述
其他暂时不改,然后配置成功后即可
在这里插入图片描述

2.4、运行服务

在这里插入图片描述
注册的第一个账户默认为管理员

2.5、注册Gitea为服务

我们希望Gitea能一直启动并且在开机或者软件崩溃时能自动重启,所以我们需要把Gitea注册成服务。此时我们需要一个软件:nssm。非常小,差不多300k左右。
nssm软件的下载网址:http://nssm.cc/download
在这里插入图片描述
下载好后解压,打开找到对应win64文件夹(32位的就打开win32文件夹),空白处右键打开命令提示符(CMD)
在这里插入图片描述
输入:./nssm install gitea
在这里插入图片描述
选择我们下载的Gitea的软件的路径后,选择安装
在这里插入图片描述
安装好后打开计算机的服务,就能看到gitea已经成为一项服务了,服务默认的状态就是自动启动了的,如果不是,需要手动设置为自动。
在这里插入图片描述
在这里插入图片描述
这时候我们再打开浏览器登录gitea验证能不能登录,如果登录不了,可能需要将服务停止一下再启动。

2.6、正常使用

可以正常创建组织、团队和仓库啦,完结~

在这里插入图片描述

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

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

相关文章

多数据库使用django-apscheduler时,migrate后并不能生成django_apscheduler_djangojob表的问题

先说一下django-apscheduler定时器的使用过程: django-apscheduler基本使用 1.安装django-apscheduler代码如下(示例): pip install django-apscheduler 2.配置settings.py的INSTALLED_APPS代码如下(示例&#xff09…

项目中常用的 19 条 SQL 优化宝典

一、EXPLAIN 做MySQL优化,我们要善用 EXPLAIN 查看SQL执行计划。 下面来个简单的示例,标注(1,2,3,4,5)我们要重点关注的数据 type列,连接类型。一个好的sql语句至少要达到range级别。杜绝出现all级别 key列,使用到的索引名。如果没有选择索引,值是NULL。可以采取强制索引…

【CCF-PTA】第03届Scratch第01题 -- 梦醒时分

梦醒时分 【题目描述】 睡眠是人体正常的生理需要,同年龄男女睡眠时间无明显差别,一般是8小时左右。居家的小明作息生活很规律,晚上11点睡觉,早晨7点起床学习。请你编写程序来判断,每周(共168小时&#x…

【JavaEE初阶】 JavaScript相应的WebAPI

文章目录 🌲WebAPI 背景知识🚩什么是 WebAPI🚩什么是 API 🎍DOM 基本概念🚩什么是 DOM🚩DOM 树 🍀获取元素🚩querySelector🚩querySelectorAll 🎄事件初识&am…

不是吧?线程池这样搞?

其他系列文章目录 设计模式合集 多线程合集 分布式合集 ES合集 文章目录 系列文章目录 前言 一、为什么需要线程池? 二、举个背景例子 三、怎么创建线程池? 四、线程池指定线程数 前言 学习线程池能够帮助我们更好地处理多线程编程,并提高程…

TikTok美区本土店铺如何做好IP隔离?

为什么要进行IP隔离呢?因为我们无法在国内直接运营Shopee、TikTok、Lazada等平台的本土店,平台识别出店铺登录IP非本土IP,则容易导致店铺风控、被标记为伪本土店,影响店铺经营。 TikTok美区店铺的IP隔离方法和Shopee本土店一致&a…

SpringMVC(二)

八、HttpMessageConverter HttpMessageConverter,报文信息转换器,将请求报文转换为Java对象,或将Java对象转换为响应报文 HttpMessageConverter提供了两个注解和两个类型:RequestBody,ResponseBody,Reque…

【MySQL】子查询

文章目录 子查询IN运算符子查询 VS 连接ALL关键字ANY关键字相关子查询 !EXISTS运算符select子句中的子查询from子句中的子查询 子查询 获取价格大于id为3的货物的商品 用到了内查询,获取id为3的商品的单价,把结构传给外查询 在where子句中编写子查询&am…

【python基础(四)】if语句详解

文章目录 一. 一个简单示例二. 条件测试1. 检查多个条件1.1. 使用and关联多个条件1.2. 使用or检查多个条件1.3. in的判断 2. 布尔表达式 三. if语句1. 简单的if语句2. if-else语句3. if-elif-else结构4. 使用多个elif代码块5. 省略else代码块 四. 使用if语句处理列表1. 检查特殊…

2023-11-23 LeetCode每日一题(HTML 实体解析器)

2023-11-23每日一题 一、题目编号 1410. HTML 实体解析器二、题目链接 点击跳转到题目位置 三、题目描述 「HTML 实体解析器」 是一种特殊的解析器,它将 HTML 代码作为输入,并用字符本身替换掉所有这些特殊的字符实体。 HTML 里这些特殊字符和它们…

Endnote软件添加期刊引用格式

在下述网址中,找到你想要添加的期刊,下载引用格式文件(后缀为.ens格式) https://endnote.com/downloads/styles/?wpv_post_searchInformationfusion&wpv_aux_current_post_id12829&wpv_view_count12764-TCPID12829 下载…

SQLY优化

insert优化 1.批量插入 手动事务提交 主键顺序插入,主键顺序插入性能高于乱序插入 2.大批量插入数据 如果一次性需要插入大批量数据,使用Insert语句插入性能较低,此时可以使用MYSQL数据库提供的load指令进行插入 主键优化 主键设计原则 …

Java实现王者荣耀小游戏

主要功能 键盘W,A,S,D键:控制玩家上下左右移动。按钮一:控制英雄发射一个矩形攻击红方小兵。按钮控制英雄发射魅惑技能,伤害小兵并让小兵停止移动。技能三:攻击多个敌人并让小兵停止移动。普攻:对小兵造成基础伤害。小…

vue3 终端实现 (vue3+xterm+websocket)

目录 一、xterm介绍 二、效果展示 三、vue文件实现代码 一、xterm介绍 xterm是一个使用

【C++初阶】STL详解(七)Stack与Queue的模拟实现

本专栏内容为:C学习专栏,分为初阶和进阶两部分。 通过本专栏的深入学习,你可以了解并掌握C。 💓博主csdn个人主页:小小unicorn ⏩专栏分类:C 🚚代码仓库:小小unicorn的代码仓库&…

力扣labuladong一刷day17天前缀和数组

力扣labuladong一刷day17天前缀和数组 一、303. 区域和检索 - 数组不可变 题目链接:https://leetcode.cn/problems/range-sum-query-immutable/ 思路:本题即为让写一个类用于计算指定区间内的数字和,但如果直接采用for循环的方式&#xff0…

Unity调用dll踩坑记

请用写一段代码,让unity无声无息的崩溃。 你说这怕是有点难哦,谁会这么不幸呢?不幸的是,我幸运的成为了那个不幸的人。 unity里面调用dll的方式是使用 DllImport ,比如有一个 Hello.dll,里面有一个 char* …

图片如何去除水印?试试这三种去水印方法!

从事自媒体行业的小伙伴们,你们是否经常为文章配图而烦恼呢?下载的图片大部分带有各种各样的水印或者多余元素,让人感到困扰。今天,我要分享三个去水印的妙招,这是新媒体人必备的图片处理技能,快来一起学起…

【MATLAB源码-第87期】基于matlab的Q-learning算法栅格地图路径规划,自主选择起始点和障碍物。

操作环境: MATLAB 2022a 1、算法描述 Q-learning是一种无模型的强化学习算法,适用于有限的马尔可夫决策过程(MDP)。它的核心是学习一个动作价值函数(action-value function),即Q函数&#xf…

面试官:【js多维数组扁平化去重并排序】

文章目录 前言方法一方法二方法三方法四总结后言 前言 hello world欢迎来到前端的新世界 😜当前文章系列专栏:JavaScript 🐱‍👓博主在前端领域还有很多知识和技术需要掌握,正在不断努力填补技术短板。(如果出现错误&a…