架设私有的Git服务器[通俗易懂]

架设私有的Git服务器[通俗易懂]Git是一个版本控制系统,现如今正在被全世界大量开发者使用。许多公司喜欢使用基于Git版本控制的GitHub代码托管。根据报道,GitHub是现如今全世界最大的代码托管网站。GitHub宣称已经有920万用户和2180万个仓库。许多大型公司现如今也将代码迁移到GitHub上。甚至于谷歌,一家搜索引擎公司,也正将代码迁移到GitHub上。GitHub能提供极佳的服务,但却有一些限制,尤其是你是单人或是一名coding爱好者。GitHub其中之一的限制就是其中免费的服务没有提

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

架设私有的Git服务器

Git是一个版本控制系统,现如今正在被全世界大量开发者使用。许多公司喜欢使用基于 Git 版本控制的 GitHub 代码托管。根据报道,GitHub 是现如今全世界最大的代码托管网站。GitHub 宣称已经有 920 万用户和 2180 万个仓库。许多大型公司现如今也将代码迁移到 GitHub 上。甚至于谷歌,一家搜索引擎公司,也正将代码迁移到 GitHub 上。

GitHub 能提供极佳的服务,但却有一些限制,尤其是你是单人或是一名 coding 爱好者。GitHub 其中之一的限制就是其中免费的服务没有提供代码私有托管业务。你不得不支付每月 7 美金购买 5 个私有仓库,并且想要更多的私有仓库则要交更多的钱。

万一你想要私有仓库或需要更多权限控制,最好的方法就是在你的服务器上运行 Git。当下,也有很多企业喜欢在公司内部部署私有的GIT仓库。本文将通过实际操作来演示如何快速的在自己的服务器上创建私有GIT版本控制系统。

以CentOS为例,主要步骤如下:

①安装对应的软件(Linux)

命令如下:

yum -y install git

②建立git用户,设置一个初始密码(类似于github平台的密码)

useradd -s /bin/git-shell git
# 指定一下git解释器,这样一来,用户不能登录到系统,只能使用git的相关命令进行操作
# 为git用户设置初始密码
passwd git
# 根据提示输入初始密码
# 例如,初始密码为123456

③创建空远程仓库(裸库)

cd /home/git
# 创建裸库
git init --bare repo.git
# repo.git为裸库的名字(repo就类似于之前在github上创建仓库名)
chown -R git:git repo.git
# 更改所有者,让git用户成为仓库的所有者(具备写权限)

④客户端的使用

例如在Windows系统下,新建文件夹test,进入文件夹,执行:

git init

⑤建立本地库与远程裸库的连接关系

# git remote add origin Git服务用户名@主机地址:服务器上裸库的地址
git remote add origin git@你的服务器地址:/home/git/repo.git

⑥测试:在本地仓库中建立一个测试文件,测试提交是否正常

## 往当前目录下,写入helloworld到文件qianfeng.txt中
echo helloworld > qianfeng.txt
## 添加和提交
git add .
git commit -m init
git push -u origin master

⑦测试克隆拉取是否正常

git clone git@你的服务器地址:/home/git/repo.git

⑧自建的git服务器支持免密登录

在客户端上通过以下命令来获取公私玥对(如已有则跳过):

ssh-keygen -t rsa -C 主体名称

产生完毕后,公私玥对位于c/Users/用户名/.ssh/

  • id_rsa:私钥(私有的钥匙,不能公开)
  • id_rsa.pub:公钥(可以公开的钥匙)

将公钥内容写入到Linux中,需要将公钥写入到git家目录中对应的文件里:

mkdir /home/git/.ssh
vim /home/git/.ssh/authorized_keys
# 保存退出之后,免密登录就立即生效

至此,我们自己私有的GIT配置就已经完成了,现在我们可以享受更安全、高效的GIT使用体验!

*陆荣涛前端学习交流Q群858752519
加群备注:CSDN推荐

请添加图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/189002.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • JLink的JTag和SWD引脚定义及接线说明

    JLink的JTag和SWD引脚定义及接线说明日常我们用到的JTAG和SWD两种模式的接口如下:但是实际上接口是如下图所示箭头所示对接的:也就是说我们JTAG的19脚对应的是SWD的1脚。当你需要引线出来的时候JTAG的TDO13脚对应的就是SWD的SWDIO7JTAG的RTCK11脚对应的就是SWD的SWCLK9JTAG的N/C19脚对应的就是SWD的V…

    2022年5月20日
    218
  • Java中随机数

    Java中随机数    在Java中主要提供了两种方式产生随机数,分别为调用Math类的random()方法和Random类提供的产生各种数据类型随机数的方法。1.Math.random()方法这个方法默认生成大于等于0.0且小于1.0的double型随机数,即0<=Math.random()<1.0。虽然Math.random()方法只可以产生0~1之间的double型数字,其实…

    2022年7月8日
    24
  • cxf实现webservice_简单框架

    cxf实现webservice_简单框架原文地址

    2022年9月21日
    3
  • Oracle列转行函数LISTAGG() WITHIN GROUP ()的使用方法

    Oracle列转行函数LISTAGG() WITHIN GROUP ()的使用方法前言:最近在写一些比较复杂的SQL,是一些统计分析类的,动不动就三四百行,也是首次写那么长的SQL,有用到一些奇形怪状的SQL函数,在这里结合网上的例子做一些笔记,以后用到不记得用法可以翻出来看!1.基础用法:LISTAGG(XXX,XXX)WITHINGROUP(ORDERBYXXX),就像聚合函数一样,通过Groupby语句,把每个Group的一个字段,拼接起来…

    2025年8月3日
    2
  • 固态硬盘各种受损,数据恢复一个对策,你值得拥有!「建议收藏」

    固态硬盘各种受损,数据恢复一个对策,你值得拥有!「建议收藏」大家好,我是效哥。前几天,效率源发布了福利:(【技术视界】受损固态硬盘(SSD)数据恢复方法)。一时间,很多朋友都找到效哥:“哎呀呀,我的固态硬盘坏了,里面还有我的博士论文”、“刚买的固态硬盘才用半年就坏了,数据库文件急需要恢复”、“固态硬盘做的系统开不了机,桌面上还有财务报表”···看到这里,效哥要给大家一个人生忠告:“重要数据千万要做好备份!忠告,忠告啊!”那么,固态硬盘已经损坏且…

    2026年1月28日
    3
  • 《自然语言处理实战入门》 —- 第4课 :中文分词原理及相关组件简介 之 语言学与分词技术简介…

    《自然语言处理实战入门》—-第4课:中文分词原理及相关组件简介之语言学与分词技术简介https://edu.csdn.net/course/play/20769/25954…

    2022年4月8日
    68

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号