centos + git + gitolite 服务搭建

article/2025/10/3 21:57:28

文章目录

  • 1、安装 Git
  • 2、用户
  • 3、安装 gitolite
  • 4、配置gitolite
  • 5、免密码登录

【 参考】

1、安装 Git

(1) 安装依赖包

[root@nginx ~]#yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-devel -y

(2) 在线安装git

  [root@bogon ~]# yum -y install git 

(3) 下载安装包安装方式

[root@bogon git-2.2.0]#tar xf git-2.2.0.tar.gz
[root@bogon git-2.2.0]#cd  git-2.2.0/
[root@bogon git-2.2.0]#make prefix=/usr/local/git all
[root@bogon git-2.2.0]#make prefix=/usr/local/git install

(4) 增加软连接

[root@bogon git-2.2.0]#ln -s /usr/local/git/bin/* /usr/bin/

(5) 验证结果,显示出版本号,表示安装成功

[root@bogon git-2.2.0]#git --version
git version 2.2.0 

2、用户

(1) 创建 git 用户

[root@bogon ~]# useradd git

(2) 切换到git用户

[root@bogon ~]# su - git
[git@bogon ~]$ pwd                 #查看当前位置
/home/git

(3) 确认.ssh/authorized_key是否存在

[git@bogon ~]$ ls -a
.  ..  .bash_logout  .bash_profile  .bashrc  .gnome2  .mozilla

备注:
如果免密配置后,仍然无法免密登录,可以查看 /var/log/secure 文件,确定拒绝登录的原因。如果跟权限有关,那么应该修改相关目录的权限。

比如 .ssh 目录的权限应该为 700,如果权限给的过大,则会报错: Authentication refused: bad ownership or modes for directory /home/git/.ssh

3、安装 gitolite

创建bin目录并安装gitolite 到bin目录($ 表示普通用户)

[git@bogon ~]$ git clone https://github.com/sitaramc/gitolite
[git@bogon ~]$ mkdir $HOME/bin
[git@bogon ~]$ gitolite/install -to $HOME/bin
[git@bogon ~]$ cd bin/
[git@bogon bin]$ ls
commands  gitolite  gitolite-shell  lib  syntactic-sugar  triggers  VERSION  VREF

4、配置gitolite

gitolite 使用特定的版本仓库 gitolite-admin 来管理用户和其他版本库。

(1) 用git用户生成公钥

注:如果你是接着上面一直做下来的,那么只需要输入cd ,然后回车,则就进入了该用户的目录,如果不是git用户,则需要输入su – git,来切换到git用户)

[git@bogon ~]cd
[git@bogon ~]$ ssh-keygen -t rsa

(2) 修改.ssh/id_rsa.pub 为 admin.pub(为什么要改成admin.pub 因为gitolite根据这个文件名来设立帐号.我这里用admin

[git@bogon ~]$ mv .ssh/id_rsa.pub admin.pub

(3) 使用管理员公钥安装gitolite

[git@bogon ~]$ $HOME/bin/gitolite setup -pk admin.pub

去/home/git/repositories 里面,可以看见仓库文件.gitolite-admin.git 和testing.git 一个是管理仓库的(只有管理员有读写权限),一个是测试用(所有人都有权限)
在这里插入图片描述

(4) clone 管理员管理仓库(不需要输密码)

[git@bogon ~]$ git clone git@127.0.0.1:gitolite-admin

进入仓库后可以看到conf 和keydir ,conf/gitolite.conf 是添加用户/仓库的配置, keydir 是放对应用户的公想·x钥.并且此时,admin.pub这个公钥可以删除了

(5) 编辑gitolite.conf

[git@bogon ~]$ vim gitolite-admin/conf/gitolite.conf

详细的配置规则,参考 gitolite

(6) 然后提交修改(注:修改用户或者增加版本库后在下图中的目录中提交修改,否则会提示修改失败)

提交修改:

[git@bogon conf]$ git add keydir/test.pub conf/gitolite.conf
[git@bogon conf]$ git add . 
[git@bogon conf]$ git commit -am "new project"
[git@bogon conf]$ git push origin master

(7) 提交完后,查看管理仓库中多了一个project.git

[git@bogon ~]$ cd repositories/
[git@bogon repositories]$ ls
gitolite-admin.git  project.git

这个时候,服务器已经搭建完毕了,只需要添加用户并给用户添加权限就可以了。下面我们添加用户测试

5、免密码登录

在这里插入图片描述

(1) 使用 ssh-keygen.exe 生成一对密钥文件: id_rsa, id_rsa.pub

(2) 将公钥文件 id_rsa.pub 修改为 用户名.pub, 例如 xiaoming.pub,放置在 git 服务器的 /home/git/gitolite-admin/keydir 目录下

(3) 将私钥放置在用户的 .ssh 目录下

比如 windows 平台 C:\Users\xiaoming\.ssh

(4) 修改 gitolite.conf 文件,配置用户 xiaoming 的访问权限

修改用 git push 到仓库中

(5) 在客户机上验证

git clone git@192.168.100.100:testing.git

验证是否可以免密码操作!


http://chatgpt.dhexx.cn/article/JNjEE5s8.shtml

相关文章

linux下gitolite-admin安装和配置

linux下gitolite-admin安装和配置 1.安装git [rootiZwz9c0doj0taonyrldlc3Z ~]# yum install git -y 2.创建git用户 [rootiZwz9c0doj0taonyrldlc3Z ~]# useradd git 3.切换到git用户 [rootiZwz9c0doj0taonyrldlc3Z ~]# su git 4.进入到git的home目录 [gitiZw…

gitolite的部署

gitolite服务部署: 1,在git服务器端安装git并创建git用户。 yum install -y git useradd git 2,生成gitolite的管理账户,这个账户也可以在git服务器端生成,也可以在自己的客户端生成。(为了防止人员离职,导…

使用gitolite在服务器上创建一个git分支

说明: 在服务器(IP:9.0.12.99)上建立一个git管理账号zjr,密码是:123456,主要改账号必须有sudo权限 #useradd zjr 密码是123456 客户端(IP:90.0.98.156)的账号:zhaojr 密码是:zhaojr Git本身的账号…

CentOS搭建gitolite服务器

目录 前言 一、创建虚拟机 二、修改虚拟机用户名 三、创建用户 四、通过源码安装gitolite 五、版本库镜像 六、验证镜像是否成功 七、新增加用户 八、创建远程仓库 参考资料 前言 一提起 Git,大家基本上都会想到 GitHub, GitLab 这一类在线托管平台。 我…

Centos下安装gitolite+git

一直以来我都是用SVN的,但最近做迭代开发、多分支时,发现SVN使用起来极不方便。因此打算换成git做源码管理。git的理论以及特性本文就不做讲解了,本主主要讲解怎么安装,配置git、以及git权限管理服务gitolite. 组网结构 git服务器…

gitolite安装及配置教程centos7

1. 安装依赖包 yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-devel -y 2.安装 Git yum -y install git 3.创建git用户 useradd git passwd git # 输入再次git用户的密码# 切换到git用户 su git4.获取Gitolite版本库并安装配置 4.1 获取…

Git服务器搭建及Gitolite权限管理

之前写过一个Git服务器的简单搭建,那个的权限管理是通过手动配置的。这次用Gitolite来管理,方便快捷。 环境:Ubuntu Server 16.04.3(命名GitServer),网络正确配置192.168.xx.xx(可以连接Intern…

gitolite

2019独角兽企业重金招聘Python工程师标准>>> gitolite是什么 gitolite是git的权限控制系统。有如下特性: a. 在git服务器上需要一个真实的unix用户 b. 能用不同的账号访问git服务器,这些账号不是真实的unix用户也没有shell权限 c. 能控制多个git仓库的读…

搭建网站显示成功后却打不开主页原因

今年自学了一下建站,在腾讯云购买了域名和服务器,用护卫神主机大师搭了个网站。网站十分简单,运行得十分顺利。 过了两天,网站突然打不开了,页面显示没有备案。上网一查,备案需要准备资料,拍照…

【很容易忽视的问题】为何使用护卫神iis-windows服务器,在使用护卫神主机修改网站信息后则无法访问的根本原因??

本来是正常的网站,只要使用护卫神的主机大师修改一下,网站就提示错误:无法建立到 xxx.com 服务器的连接 不论基于哪个Lamp搭建环境【护卫神、phpstudy、宝塔Lamp】一旦你使用第三方软件为何网站,则必须确保以第三方的为准统一修改…

360主机卫士Linux版,360主机卫士

什么是虚拟补丁? 是一种可以使网站站长摆脱补丁管理困境的解决方案。 虚拟补丁简单的说就是"软补丁",针对CMS的漏洞,不用站长自己修改CMS代码,在应用防火墙上,生成的特定防护规则。 它的好处: 1.不用修改代…

护卫神IIS下没有办法直接访问thinkphp中public入口的问题解决方案

首次使用护卫神的主机系统来搭建运行自己的系统,发现没有办法直接指向框架的public,研究了一下总结出两种方案.如以下: 一. 1,先随意的创建一个主站不做使用. 2,在主站下面新建一个子站作为自己实际的项目配置.在主站目录的基础上追加public文件夹. 以上是第一种解决方法,很常…

护卫神·Nginx大师面板上如何设置伪静态

许多客户在使用护卫神Nginx大师创建网站后,因SEO要求,可能需要使用伪静态功能,在这里护卫神就大体说一下如何设置伪静态。本例以安装wordpress博客程序后设置伪静态;一、先打开桌面上的“护卫神Nginx大师”,右键点击要…

linux系统终端用户名和密码忘记了,主机大师(Linux)登录账户密码忘记的解决办法...

护卫神主机大师linux最新版本方法: 我们建议在初次安装完后复制相关的登录信息并妥善保存好。如没有复制下来,忘记了相关的登录信息或者是账户密码,可通过以下办法解决。 一、登录ssh终端后复制以下命令执行就可以创建一个新的用户&#xff1…

护卫神设置public目录(IIS下TP5如何设置运行目录)

护卫神设置public目录 最近有人问小编,护卫神主机系统或者IIS配置PHP的时候,public设置为对外公开目录这个问题百度无法搜索到真实解决办法,那么我们应该如何将运行目录设置为/public呢? 当我们使用护卫神主机系统配置Thinkphp的…

护卫神mysql远程_护卫神 主机管理系统使用说明(MySQL管理)

感谢大家使用【护卫神主机管理系统】v3.1,该版本支持在windows server 2003/2008/2012,含32位和64位,直接开设配置web站、ftp站,以及sql server和mysql,是您开设和管理虚拟主机的绝好帮手。 但是对于新用户可能在使用上…

护卫神apache大师3.0.0 php,护卫神Apache大师(PHP环境套件)V3.2.0 官方免费版

护卫神Apache大师是一套为方便广大用户管理服务器而开发的软件,集成了多版本PHP环境、Apache、Tomcat、JSP、MySQL、PhpMyadmin、主机管理系统、FilaZilla FTP,支持开设和管理多个主机、MySQL数据库。 【软件性质】自主开发,完全免费。 【运行…

系统切换服务器方法,护卫神•主机管理系统更换服务器方法(移机)

本文主要介绍如何整体迁移主机管理系统和网站到新服务器。 一、备份数据 将老服务器上的主机管理系统数据库备份。 位置:在主机管理系统安装目录下的host/admin/database/my.asp 二、安装主机管理系统 在新服务器安装护卫神•主机管理系统,推荐安装最新版…

护卫神主机大师或者是主机管理系统中创建网站时提示开设失败的解决办法

一种情况:阿里云默认的系统一般会开启密码复杂度的功能,这样在使用护卫神主机大师或者是主机管理系统开设网站时,填写的密码如不符合系统的复杂度要求。那么将出出现以下的提示:解决办法如下:1、打开系统组策略 2、找到…

护卫神 主机大师 MySQL无法远程连接的解决方案

护卫神 主机大师 MySQL无法远程连接的解决方案 背景:服务器小厂独立ip,其他环境直接用护卫神一键安装,因为远程桌面不总是很方便,远程连接MySQL报错 解决办法: 1、各种搜索引擎一阵猛搓,无法解决&#xf…