当前位置: 首页 > article >正文

git使用指南-实践-搭建git私服

一.创建git私服的核心基础

所谓的git私服,其实就是在一个服务器上创建一个个的git仓库,并且这些仓库允许其在一个网络上被其他用户访问。

创建一个最素的git私服:随便找一台linux服务器,这里假设其ip为192.168.0.6,使用的linux用户为gitdoc。

我们在这台服务器上创建一个目录repos.git,然后进入到这个目录下执行git init --bare,这样就创建好了一个远程仓库了。像下面这样。

d991bf83a1e54fb8bb8332dbd7dc2122.png

这样一个远程的git仓库就创建好了,当你添加了正确的ssh公钥后,你就可以通过

git clone gitdoc@192.168.0.6:/home/gitdoc/repos.git

把远程仓库克隆到本地了,但是这样一个git私服,它只提供了版本管理、分支管理、代码共享等基础能力,对于多人协作的支持是非常弱的。所以在常规的生产环境下我们一般会选择一个成熟的git私服产品来搭建我们的服务器。比如gitlab、gitea。或者直接使用gitcode、github、gitee这样的产品。下面我们以gitea为例来讲解如何在一个linux服务器上搭建git私服。

二.搭建gitea私服

gitea是一个开源的用go语言写的一个git私服产品。几乎github上有的功能它都有。它也提供免费版和付费版,一般情况下,免费版也足够使用了。

官网:Gitea Official Website

下载地址:Gitea Official Website

97bea8f293064807b76f6e6abc53fd55.png

这里我们根据自己的服务器情况下载正确的版本即可。下载下来的文件就是一个可执行的二进制文件。

cef7140e2029428ab5a53d64f416408f.png

初始状态下,他是没有执行权限的,使用chmod命令给他一个执行权限,然后将其重命名为gitea。

a0d07f536a4847c5a1f03e255bc6f6d4.png

gitea的运行需要一个数据库,大众的数据库它都支持,这里我使用的是mysql。数据库的操作这里不做介绍了,你只需要为gitea创建一个空的数据库就行了,这里假设这个数据库的名字是giteadb。

然后你就可以执行gitea这个程序了,如下

3d143521f3964f76a9ca4573ccf8f19e.png

第一次执行它会运行在3000这个端口上,你用浏览器第一次访问这个地址会出现一个初始化的页面,用来设置一些配置信息。如下,重要的参数已在下图标注。

e151e38ef4364ef1a4bd9030aa594675.png

fe8a7507052f44f3a04452bdae0c10d0.png

然后点击install gitea按钮,等待一小会就安装好了。安装好后会跳入下面的界面

659c0e95c8af4f66ab1436e734673b0d.png

点击注册按钮,注册一个新的账号,这里注意你第一次注册的账号是管理员账号。最好不要用这个账号作为你的常规账号。注册完管理员账号再注册一个新的账号作为自己的常规账号。

登录上来后是这样的

8dcbc229f66d4bed80a24f6f6d22a797.png

三.gitea功能简单介绍

一个完整代码托管平台有的功能它几乎都有。

创建组织

创建个人仓库

创建组织仓库

仓库管理方面

pull request 

issue

wiki文档编写

版本发布等等 这里不列举了,自行探索吧。

4832fb7ad81e49b590a32e5f7aa96a31.png


http://www.kler.cn/a/468785.html

相关文章:

  • c# CodeFirst生成表字段加注释
  • maven的pom.xml配置详解
  • 将本地的 Git 仓库上传到 GitHub 上(github没有该仓库)
  • 软件项目体系建设文档,项目开发实施运维,审计,安全体系建设,验收交付,售前资料(word原件)
  • iOS - Tagged Pointer
  • 【CSS】第一天 基础选择器与文字控制属性
  • 【最新版】智慧小区物业管理小程序源码+uniapp全开源
  • 【每日学点鸿蒙知识】模拟器开启网络、长时任务、兼容性测试支持、丢帧定位、SO中访问rawfile等
  • 操作系统大题整理
  • 【Android项目学习】2.抖音二级评论
  • 代码随想录算法训练营第二十四天-回溯算法-78. 子集
  • yolov5核查数据标注漏报和误报
  • Python常用算法
  • WPS计算机二级•数据查找分析
  • jupyter展示图片做法以及为什么会无法展示图片
  • 编辑音频的基本属性
  • 基于Python的考研学习系统
  • 亚马逊云科技 re:Invent 2024 Amazon Bedrock 推出新功能,加速AI落地
  • 渗透测试实战-DC-1
  • 力扣23.合并K个升序链表
  • MySQL 主从同步模式选择指南
  • 大模型与EDA工具
  • Pytorch库结构是什么样的
  • C语言冒泡排序教程简介
  • Viggle AI:支持小孩或者卡通人物吗? [Viggle AI实战教程] – 第2篇
  • Go语言的 的垃圾回收(Garbage Collection)基础知识