自建 git 服务器
创始人
2024-09-25 14:24:41
0次

       所有老板(至少 99%)都一样,想花一分钱办两分钱的事,想招十块钱的人干二十块钱的事……我表示理解(A Pei ~~ 既想马儿跑得快,又想马儿不吃草)

       在老板眼中,我恰好是那个性价比最高的人(自以为是)!对于我来说,多学点东西不是什么坏事,虽然有点辛苦。我一贯赞同一个观点:在一件中上超过90%以上的人,不容易;在两件事上超过80%以上的人,相对容易;……在五件事、十件事上超过90%以上的人,也相对容易!在快认(天)命的年纪,我有勇气和能力认为工作对于我而言就是工作而已,我不看重任何一份工作,但是只要我干,我就会努力去干好,尽一个职工打工人的本分。

       gitee 企业版……呵呵!gitee 私域部署……呵呵呵!

       我总不能天天找小伙伴们要源码吧,我不愿意被人 BS:既不专业又多心!这点我也理解:毕竟源码也是公司的资产,现在的小伙伴们流动又快,谁能保证走的时候源码是完整的?

       于是,自建 git 服务器就是当下要紧的任务了。

       网上搜索了相关的资料,以为 Gitea 是最为理想的方案。开源、免费,支持代码审查、错误跟踪、网络托管、私人分支、个人分支、自托管,版本控制系统为 git (接地气),除不支持构建系统、发布二进制文件外和商业支持外,可以说接近于完美了。而且是开箱即用,只需简单配置即可搭建完成。

       服务器:实体、云、虚拟,均可(本例是 win 的 server 系统)
       git 工具包:Git,自行安装即可
       gitea软件包https://github.com/go-gitea/gitea/releases,相对麻烦一点点,老司机都懂得如何踩油门加速,想办法弄下来就是成功(本例下的是 windows-4.0-amd64,建议下载压缩包,不压缩下载还是有些慢的)

        要戳“show all ……”,不然是找不到 win 的包的。

       sqlite3:SQLite Download Page,小型、快速,免安装(需配置环境变量,方便迁移)

        sqlite3 解压到文件夹中(不要有中文、空格、特殊字符等),环境变量中系统变量 Path 添加一条 sqlite3 所在路径(界面为 power toys 系统变量编辑界面)

        gitea 下载(解压)完成,放到一个文件夹中(开箱即用,无需安装),位置任意但不建议有中文字符、空格及特殊符号。

       自动生成目录不用管。data 目录为手动创建,用于存放数据库及仓库相关文件。data 目录下又有手工创建目录 DB,用于存放 sqlite3 数据库文件。

       所有手工创建目录必须要创建,否则在配置时会出错。

       运行 gitea,如图。

        访问默认地址:localhost:3000,配置说明如下图:

        可选设置,依个人实际进行设置即可,无要求可默认。

        管理员账号是必须要有,不然何以掌控全局?!填之……

       稍等十秒左右,系统就部署完成。因为创建了管理员账号,部署完成后直接进入账号仓库界面。

       按正常步骤创建仓库。除仓库名称是必填外(拥有者,可以选择注册用户),其它为选填。

       创建完成!

        github 20年10月1日后将新库主分支名称改为 main,而 git 默认初始化本地仓库仍为 master,可能导致推送到远程会出现这样或那样的问题。我们修改 git 配置文件(2.X 以上版本支持),将默认(主)分支名称改为 main。修改地方如下图。

       万事俱备,以本地现有项目为基础,初始化本地仓库(git 已经安装或配置好)并推送到远程。

        推送到远程,提示安全认证未启用。

        再次强制推送(--force,创建时初始化了远程仓库【空库,仅有.gitignore】,但未做同步,因此强制推送,本地覆盖远程),弹出对话框要求验证。输入用户密码,确定。推送成功。再次推送时即无需再次认证了。

        最终仓库内空如下:

       成功!后续研究启用 https 的方法,成功便更新。


        gitea 启动后的命令行窗口不能关闭。


       一个可以坠落的老菜鸡的自我救赎!
       自勉!!!


       开启了 https ,因使用的是自签名,所以也一样要添加用户凭据, 添加过一次后续就可以直接 push 推送了。【后面有空再研究使用第三方证书颁发机构签名】

       生成自签名,两个签名文件在 gitea 所在目录中,将两个文件复制到 custcom 目录中。
       注意:gitea cert --host [127.0.0.1],这里的 gitea 是 gitea 的文件名。如是有版本号则为:
       gitea-1.22.1-windows-4.0-amd64 cert --host [127.0.0.1]
       嫌麻烦可以修改 gitea 的文件名。

;; HOST 是 gitea 服务器的地址/域名,架在内网的就直接使用内网 IP gitea cert --host [HOST]

       本次使用 gitea 内置的 HTTPS 支持,通过编辑 app.ini 文件实现。app.ini 文件在 custcom 下 的 conf 目录中。修改如下:

    [server]     PROTOCOL  = https     ROOT_URL  = https://git.example.com:3000/     HTTP_PORT = 3000     CERT_FILE = cert.pem     KEY_FILE  = key.pem

       ROOT_URL 和 HTTP_PORT 按实际进行修改。

       重新启动 gitea 后,就只能使用 https 登录 ROOT_URL 指定的地址了,127 的回环地址不能使用了。

       漏了一点:要设置HTTP重定向。Gitea服务器仅支持监听一个端口;要重定向 HTTP 请求至 HTTPS 端口,需要启用HTTP重定向服务:

[server] REDIRECT_OTHER_PORT = true ;; Port the redirection service should listen on PORT_TO_REDIRECT = 3080

      

相关内容

热门资讯

每日必看!江岸多玩到底能开挂吗... 每日必看!江岸多玩到底能开挂吗(辅助挂),江岸多玩原来真的有辅助挂讲义1、江岸多玩脚本辅助下载、江岸...
玩家交流!颖河竞技怎么开挂(外... 玩家交流!颖河竞技怎么开挂(外挂),颖河竞技好像是有外挂教材一、颖河竞技游戏安装教程牌型概率发牌机制...
最新通报!皮皮四川麻将软件下载... 最新通报!皮皮四川麻将软件下载(辅助挂),皮皮四川麻将果然有辅助挂模块1、操作简单,无需皮皮四川麻将...
一分钟揭秘!52游戏开挂脚本(... 一分钟揭秘!52游戏开挂脚本(透视挂),52游戏切实有透视挂法子52游戏脚本下载中分为三种模型:52...
一分钟快速了解!堆堆乐开挂破解... 一分钟快速了解!堆堆乐开挂破解(外挂),堆堆乐竟然真的有外挂方针1、下载好堆堆乐正确养号方法之后点击...
重大通报!汇城贵州麻将开挂脚本... 重大通报!汇城贵州麻将开挂脚本(开挂),汇城贵州麻将原来真的有开挂法门1、重大通报!汇城贵州麻将开挂...
盘点一款!七色城透视挂件(外挂... 盘点一款!七色城透视挂件(外挂),七色城切实是真的有外挂经验1、全新机制【七色城ai辅助工具激活码】...
今日头条!多多休闲透视软件下载... 今日头条!多多休闲透视软件下载(外挂),多多休闲确实是真的有外挂攻略1、首先打开多多休闲辅助器下载最...
关于!钱柜麻将真的有透视吗(辅... 关于!钱柜麻将真的有透视吗(辅助器),钱柜麻将一贯是有辅助器练习钱柜麻将能透视中分为三种模型:钱柜麻...
今日焦点!河北家乡棋牌辅助工具... 今日焦点!河北家乡棋牌辅助工具(外挂),河北家乡棋牌果然是有外挂手册小薇(辅助器软件下载)致您一封信...