CentOS Gitolite 配置指南
简介

Gitolite 是一个基于 Git 的权限管理工具,可以方便地在多个用户之间共享代码库,本文将详细介绍如何在 CentOS 系统上配置 Gitolite,实现代码库的权限控制。
安装 Gitolite
安装 Git
确保你的 CentOS 系统已经安装了 Git,可以使用以下命令安装:
sudo yum install git
安装 Gitolite
从 Gitolite 的官方仓库安装 Gitolite:
sudo yum install gitolite3
初始化 Gitolite
初始化 Gitolite 仓库
使用以下命令初始化 Gitolite 仓库:
sudo gl-ctl sudo
配置 Gitolite 仓库
在初始化过程中,会要求你设置 Gitolite 的管理员密码,设置完成后,进入 Gitolite 仓库目录:

cd /etc/gitolite
创建用户和权限
在 Gitolite 仓库目录下,创建一个名为 conf 的子目录,并在该目录下创建一个名为 gitolite.conf 的文件,编辑该文件,添加用户和权限配置:
nano gitolite.conf
以下是一个示例配置:
repo foo
RW = @all
RW = @admin
RW = @user1
RW = @user2
repo bar
RW = @all
RW = @admin
RW = @user1 @all 表示所有用户,@admin 表示管理员用户,@user1 和 @user2 表示普通用户。
重启 Gitolite 服务
配置完成后,重启 Gitolite 服务以应用更改:
sudo gl-ctl rehash
用户访问 Gitolite 仓库
克隆仓库
用户可以使用以下命令克隆仓库:
git clone ssh://git@yourserver.com:port/repo.git
yourserver.com 是 Gitolite 服务器的域名或 IP 地址,port 是 Gitolite 服务的端口(默认为 29418),repo 是仓库的名称。
登录

用户需要使用 SSH 密钥登录 Gitolite 服务器,如果尚未生成 SSH 密钥,可以使用以下命令生成:
ssh-keygen -t rsa -b 4096
将生成的公钥添加到 Gitolite 服务器的 /etc/gitolite/keydir/ 目录下。
FAQs
问题 1:如何查看 Gitolite 的版本信息?
解答:使用以下命令查看 Gitolite 的版本信息:
gl-ctl version
问题 2:如何删除 Gitolite 仓库?
解答:使用以下命令列出所有仓库:
gl-ctl ls-repos
使用以下命令删除指定的仓库:
gl-ctl rm-repo -f repo_name
repo_name 是要删除的仓库名称。

