centos7 安装 gitolite (git服务器)

时间:2022-09-02 15:38:08

gitolite简介

轻量级git服务器程序,解决了git权限管理的问题。(git是一个分布式版本控制系统,就是说每个人作为客户端的同时又是服务器)
项目GitHub地址:https://github.com/sitaramc/gitolite
项目官方文档:http://gitolite.com/gitolite/
当前环境:centos 7

安装前准备

  • 在客户端机器安装git,并生成秘钥
    各操作系统安装方法均很简单,请自行安装。
    使用git安装目录下的 usr/bin/ssh-keygen生成rsa秘钥

     ssh-keygen -t rsa 

    然后一路回车到结束。(生成秘钥默认在当前用户目录的.ssh目录下,下面要用)

  • 安装没有安装的依赖包

    yum install -y gcc gcc-c++ pcre pcre-devel zlib zlib-devel openssl openssl-devel perl* git

    需要注意:gitolite对以上软件版本有一定的要求,如果报错,升级软件即可。

    yum update -y  <软件名>
  • 创建用户

    useradd git
    passwd git

    如果已有用户,请确认

    1. ~/.ssh/authorized_keys文件是空的或者不存在
    2. 客户机ssh-keygen生成的id_rsa.pub公钥已经拷贝到:~/YourName.pub ,改成自己的名字,为了多人协作时便于区分,并不是硬性规定

开始安装

su git  <!-- 切换到git用户 -->
git clone git://github.com/sitaramc/gitolite
mkdir -p ~/bin <!-- 一定要创建bin文件夹 -->
~/gitolite/install -to ~/bin
~/bin/gitolite setup -pk YourName.pub <!-- 生成下面所要用的管理库gitolite-admin和测试用库testing -->

安装完成

添加用户和仓库

下载管理仓库

git clone git@host:gitolite-admin.git

打开看到两个文件夹:
conf:存放配置文件(授权文件)
keyDir:存放所有客户端用户的公钥

打开conf/gitolite.conf 配置如下:

@webgroup       =   zhangsan lisi
@androidgroup = lisi
@iosgroup = wangwu <!-- 设置管理员的地方 -->
repo gitolite-admin
RW+ = lisi <!-- 可以用来学习使用 -->
repo testing
RW+ = @all repo web
RW+ = @webgroup
R = fengshuang repo android
RW+ = @androidgroup repo ios
RW+ = @iosgroup

表示新建三个分组:@webgroup、@androidgroup、@iosgroup,新建三个仓库:web、android、ios,RW分别代表读写,可以通过人所属组给人赋权,也可以直接给人赋权,组前记得加@
将以上配置人间中的人的公钥复制到keyDir文件夹
然后回到仓库根目录gitolite-admin下,使用以下命令提交修改:

git add .
git commit -m "add users and repos"
git push

【注意】:开发人员可以git clone仓库的前提是在这个配置文件中进行了授权提交,并且其公钥已经交由管理员提交到keyDir目录中。
简单的权限管理及这么多,基本上够项目使用,更加负责的权限配置,请参阅官方文档。http://gitolite.com/gitolite/

开发人员下载仓库

这里以张三下载web仓库为例

git clone git@host:web.git  <!-- 别忘了后面的.git -->

centos7 安装 gitolite (git服务器)的更多相关文章

  1. GIT-Linux&lpar;CentOS7&rpar;系统部署git服务器

    GIT-Linux(CentOS7)系统部署git服务器 root账号登录 一. 安装并配置必要的依赖关系在CentOS系统上安装所需的依赖:ssh,防火墙,postfix(用于邮件通知) ,wget ...

  2. Centos7安装vsftpd &lpar;FTP服务器&rpar;

    Centos7安装vsftpd (FTP服务器) 原文链接:https://www.jianshu.com/p/9abad055fff6 TyiMan 关注 2016.02.06 21:19* 字数 ...

  3. CentOS7安装 Apache HTTP 服务器

    CentOS7安装 Apache HTTP 服务器 时间:2015-05-02 00:45来源:linux.cn 作者:linux.cn 举报 点击:11457次 不管你因为什么原因使用服务器,大部分 ...

  4. &lbrack;转载&rsqb;Ubuntu安装配置 git 服务器和客户端

    原文地址:Ubuntu安装配置 git 服务器和客户端作者:ding404 1.配置前准备 服务器:安装ssh server另外还装了gitosis做git的权限管理 sudo apt-get ins ...

  5. 在Centos7下搭建Git服务器

    ① 安装 Git ② 服务器端创建 git 用户,用来管理 Git 服务,并为 git 用户设置密码 ③ 服务器端创建 Git 仓库 ④ 客户端 clone 远程仓库 ⑤ 客户端创建 SSH 公钥和私 ...

  6. &lbrack;转&rsqb; 怎样在Ubuntu 14&period;04中搭建gitolite git服务器

    相比gitosis,gitolite的功能更为强大,支持对权限的细分控制,学习一下在最新版 的ubuntu 14.04 LTS中搭建gitolite服务器是非常有必要的,嘿嘿,一会属于我们自己的Git ...

  7. 怎样在Ubuntu 14&period;04中搭建gitolite git服务器

     1.   首先这里我们安装openssh-serveropenssh-client,如果你用的是VPS之类的一般都默认安装好了,不过运行一个这个命令不会有错的,如果有安装就会提示已安装. sud ...

  8. CentOS安装配置Git服务器&lpar;gitosis&rpar;

    主要参考: http://blog.csdn.net/dengjianqiang2011/article/details/9260435 辅助参考: http://freeloda.blog.51ct ...

  9. 使用centos7构建本地git服务器

    git的安装非常简单 直接yum install git -y即可 大概看一下我的执行步骤吧 首先在服务器上执行以下操作,完成创建仓库 mkdir -p /data/test/bp.git #创建仓库 ...

随机推荐

  1. Sublime Text

    今天在网上找了个Sublime Text 3 Build 3065 的 license key .在最新的Build 3083 下可以使用,记录下. ----- BEGIN LICENSE ----- ...

  2. Esper系列&lpar;二&rpar;时间窗口、长度窗口、cast、注解、自定义函数、静态方法

    长度窗口实现原理图 说明: 上图长度窗口为5,事件W1至W5进入引擎后属于NewEvents队列,事件W6进入引擎后,W2至W6就属于NewEvents队列,而事件W1就属于OldEvents队列了. ...

  3. vim 多文件编辑【超实用】

    vim 多文件编辑(偶的linux笔记) http://blog.csdn.net/lcj_cjfykx/article/details/18805721 通过vim打开的每个文件都对应着一个buff ...

  4. window开启remote desktop服务

    确定自己的PC支持远程桌面   1 先确定被遥控的电脑的系统必须是Professional或Enterprise以上版本,家庭版不支持远程桌面.以Win8.1(7和8同理)为例,依次打开控制面板→系统 ...

  5. windows虚拟内存管理

    内存管理是操作系统非常重要的部分,处理器每一次的升级都会给内存管理方式带来巨大的变化,向早期的8086cpu的分段式管理,到后来的80x86 系列的32位cpu推出的保护模式和段页式管理.在应用程序中 ...

  6. laravel之数据库

    mysql数据库设置其实在.env中 数据库修改在

  7. css设置两行多余文字用&period;&period;显示

    display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; word-break: break-all;

  8. java 常见面试题总结&lpar;一&rpar;

    1.Redis应用场景 答:分布式会话,分布式锁,计数器,缓存,消息队列,排行榜,最新列表. 2.如何访问一个类的私有方法? 答:使用反射进行访问,代码如下: package cn.entity; p ...

  9. Java工厂方法模式

    工厂方法模式: /** * 工厂方法模式:也叫工厂模式,属于创建型模式,父类工厂(接口)负责定义产品对象的公共接口, * 而子类工厂负责创建具体的产品对象. * 目的:是为了把产品的实例化操作延迟到子 ...

  10. Docker for Windows&lpar;二&rpar;登录与配置镜像加速器

    一.启动Docker for Windows 通过桌面Docker Desktop启动,右下角出现的白色鲸鱼图标保持稳定时,表示Docker正在正常运行,将鼠标移到图标上会显示"Docker ...