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

article/2025/10/3 23:25:09

之前写过一个Git服务器的简单搭建,那个的权限管理是通过手动配置的。这次用Gitolite来管理,方便快捷。

环境:Ubuntu Server 16.04.3(命名GitServer),网络正确配置192.168.xx.xx(可以连接Internet),默认root账户

1. 安装Git的过程和上篇类似,就简单说

apt-get update  
# 安装 ssh
apt-get install openssh-server
# 安装 Git
apt-get install git 


可能是因为新版的原因,git用户已经自动创建好,不需要手动创建git用户。

2. 切换到git用户,生成一对RSA密钥

# 先在 root 用户下创建 git 用户的密码(这是个好习惯)
passwd git# 切换到 git 用户
su git
# 生成一对 RSA 密钥
ssh-keygen -t rsa
# 一路回车下来创建成功
# 进入密钥的目标,将公钥文件改名
cd /home/git/.ssh
mv id_rsa.pub admin.pub
# GitServer 服务器将负责我的 Git 仓库管理(也可以用其他机器),命名成 admin.pub

3. 安装Gitolite

# 进入 git 用户主目录(~)
cd /home/git
# 下载 gitolite 的仓库
git clone git://github.com/sitaramc/gitolite
# 创建 bin 文件夹
mkdir -p $HOME/bin
# 安装 gitolite
gitolite/install -to $HOME/bin

4. 配置Gitolite

# 进入密钥目录
cd /home/git/.ssh
# 将管理的公钥文件 setup 到 gitolite 中
$HOME/bin/gitolite setup -pk admin.pub
# 切回git主目录,多出了一个文件、一个文件夹
cd /home/git
ls
# projects.list 文件:仓库列表文件(gitolite自动创建)
# repositories 文件夹:存放所有 git 仓库的文件夹
# repositories 文件夹已经存在两个仓库 gitolite-admin.git、test.git
# gitolite-admin.git  管理配置权限的仓库
# testing.git         测试仓库
# 管理员把 gitolite-admin 直接 clone 到本地,就可以进行管理 git 服务

5. 下载服务器端的远程管理仓库

我是在 GitServer 这个电脑上下载 gitolite-admin,也可以在其他电脑上下载 gitolite-admin 进行管理。

注:使用其他电脑进行管理,需要将其他电脑生产的公钥文件 setup 到 gitolite 中。

# 进入 git 主目录
cd /home/git
# 下载远程管理仓库, 请把 192.168.xx.xx 换成你自己服务器的域名或者ip
git clone git@192.168.xx.xx:/gitolite-admin
# 进入 gitolite-admin 目录,可以看到 conf、keydir 两个文件夹
cd gitolite-admin
# keydir  用来存放所有用户的pub公钥文件的,当前目录有 admin.pub 文件
# conf    用来配置 Git 仓库、用户、用户组权限的,由目录下 gitolite.conf 文件来配置

6. 配置gitolite.conf

# 进入 conf 目录,编辑 gitolite.conf
cd conf
vi gitolite.conf
# 文件内容如下:repo gitolite-admin  # 仓库名gitolite-adminRW+     =   admin    # 用户 admin 拥有可读写权限repo testing         # 仓库名testingRW+     =   @all     # 用户组 all 拥有可读写权限

根据需要配置权限:

创建管理组 admin,组员有 admin 和 rdongc
创建开发组 dev,组员有 2012
创建仓库 test2012
admin组 拥有 master 分支读写权
dev组 拥有 dev 分支读写权

# 需要将两个用户的公钥(rdongc.pub、2012.pub)上传到 /home/git/gitolite-admin/keydir

7. 应用修改到远程服务器端

刚刚的配置就是修改了 gitolite-admin 仓库的文件,还需要将修改后的文件提交到服务器端

# 切换到 gitolite-admin 目录
cd /home/git/gitolite-admin# 配置 git config,告诉 Git 你是谁 (根据自己情况)
git config --global user.name "admin"
git config --global user.email "admin@example.com"
# 提交到远程服务器端(提交的文件:gitolite.conf、rdongc.pub、2012.pub)
git add .
git commit -m "update gitolite-admin"
git push# 进入/home/git/repositories/目录,新增了 test2012.git 的仓库文件,这是一个空白仓库

8. 客户端clone项目

现在rdongc、2012两个用户的客户端电脑可以  clone 仓库 test2012.git

git clone git@192.168.xx.xx:test2012.git

OK,完成!




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

相关文章

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…

服务器维护护卫神,护卫神主机重启服务器

护卫神主机重启服务器 内容精选 换一换 通过Web浏览器登录资源,会话连接断开,提示网络连接异常,连接已断开,请重试(Code:T_1006)。云堡垒机系统与资源服务器之间网络连接不稳定,导致连接断开。云堡垒机或资…

护卫神主机大师php,护卫神主机大师下载

护卫神主机大师支持一键安装网站运行环境(IISASPASP.netPHPMySQLFTP伪静态PhpMyAdmin),并可在线开设主机、SQLServer和MySQL;Web方式管理,拥有独立前台和后台面板。护卫神主机大师支持WindowsServer2008/2012,推荐在全新操作系统下安装。 软件…

护卫神mysql提权_护卫神主机大师提权漏洞利用分析

*本文原创作者:Freedom,本文属FreeBuf原创奖励计划,未经许可禁止转载 0x01 前言 护卫神主机大师支持一键安装网站运行环境(IISASPASP.netPHP5.2-5.6MySQLFTP伪静态PhpMyAdmin),并可在线开设主机、SQL Server和MySQL;We…

护卫神mysql提权_护卫神主机大师被提权漏洞利用(可千万不能乱装护卫神主机大师安装的软件)...

原标题:护卫神主机大师被提权漏洞利用(可千万不能乱装护卫神主机大师安装的软件) “护卫神主机大师支持一键安装网站运行环境(IISASPASP.netPHP5.2-5.6MySQLFTP伪静态PhpMyAdmin),并可在线开设主机、SQL Server和MySQL;Web方式管理&#xff0…

护卫神mysql域名连接_护卫神·主机大师WEB管理端绑定自己的域名_护卫神

护卫神主机大师面板上的网站管理WEB端地址默认为http://服务器IP:6588/admin。为了方便管理,可以绑定指定的域名,通过以下两种方法修改。 第一种方法: 在服务器上打开“护卫神主机大师”面板,点击“主机系统”旁边的“设置”进去&…

护卫神 更换mysql引擎_护卫神·主机大师更换服务器方法(移机或重装)_护卫神...

本文主要介绍如何转移护卫神主机大师的相关数据及网站数据/SQL数据库,适用于重装系统及迁移服务器。 一,备份数据: 复制备份护卫神主机大师数据库文件; 位置:护卫神主机大师安装目录/host/database/my.asp。 复制备份您…

护卫神怎么重启php,护卫神·主机大师如何开启php_opcache_护卫神

护卫神主机大师支持5.5至7.3这几个版本开启php_opcache扩展。 一,先打开护卫神主机大师面板-常用操作-打开软件目录 二,打开phpweb目录,找到要开启opcache的php版本,比如我这里要在php5.5中开启,进入php55目录&#xf…