centos7 安装 gitolite (git服务器)
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如果已有用户,请确认
~/.ssh/authorized_keys
文件是空的或者不存在- 客户机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服务器)的更多相关文章
- GIT-Linux(CentOS7)系统部署git服务器
GIT-Linux(CentOS7)系统部署git服务器 root账号登录 一. 安装并配置必要的依赖关系在CentOS系统上安装所需的依赖:ssh,防火墙,postfix(用于邮件通知) ,wget ...
- Centos7安装vsftpd (FTP服务器)
Centos7安装vsftpd (FTP服务器) 原文链接:https://www.jianshu.com/p/9abad055fff6 TyiMan 关注 2016.02.06 21:19* 字数 ...
- CentOS7安装 Apache HTTP 服务器
CentOS7安装 Apache HTTP 服务器 时间:2015-05-02 00:45来源:linux.cn 作者:linux.cn 举报 点击:11457次 不管你因为什么原因使用服务器,大部分 ...
- [转载]Ubuntu安装配置 git 服务器和客户端
原文地址:Ubuntu安装配置 git 服务器和客户端作者:ding404 1.配置前准备 服务器:安装ssh server另外还装了gitosis做git的权限管理 sudo apt-get ins ...
- 在Centos7下搭建Git服务器
① 安装 Git ② 服务器端创建 git 用户,用来管理 Git 服务,并为 git 用户设置密码 ③ 服务器端创建 Git 仓库 ④ 客户端 clone 远程仓库 ⑤ 客户端创建 SSH 公钥和私 ...
- [转] 怎样在Ubuntu 14.04中搭建gitolite git服务器
相比gitosis,gitolite的功能更为强大,支持对权限的细分控制,学习一下在最新版 的ubuntu 14.04 LTS中搭建gitolite服务器是非常有必要的,嘿嘿,一会属于我们自己的Git ...
- 怎样在Ubuntu 14.04中搭建gitolite git服务器
1. 首先这里我们安装openssh-serveropenssh-client,如果你用的是VPS之类的一般都默认安装好了,不过运行一个这个命令不会有错的,如果有安装就会提示已安装. sud ...
- CentOS安装配置Git服务器(gitosis)
主要参考: http://blog.csdn.net/dengjianqiang2011/article/details/9260435 辅助参考: http://freeloda.blog.51ct ...
- 使用centos7构建本地git服务器
git的安装非常简单 直接yum install git -y即可 大概看一下我的执行步骤吧 首先在服务器上执行以下操作,完成创建仓库 mkdir -p /data/test/bp.git #创建仓库 ...
随机推荐
- ios UITableView中Cell重用机制导致内容重复解决方法
UITableView继承自UIScrollview,是苹果为我们封装好的一个基于scroll的控件.上面主要是一个个的 UITableViewCell,可以让UITableViewCell响应一些点 ...
- 一些VS2013的使用技巧(转载)
1. Peek View 可以在不新建TAB的情况下快速查看.编辑一个函数的代码. 用法:在光标移至某个函数下,按下alt+F12. 然后在Peek窗口里可以继续按alt+F12.然后按ctrl+al ...
- <link>标签的rel属性全解析
<link>标签定义了当前文档与 Web 集合中其他文档的关系.link 元素是一个空元素,它仅包含属性.此元素只能存在于 head 部分,不过它可出现任何次数.在 HTML 中,&l ...
- 160408、SpringMVC整合Shiro
第一步:配置web.xml 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 <!-- 配置Shiro过滤器,先让Shiro过滤系统接收到的请求 --> ...
- Exchange Database Status(Copy Status ,Content Index State,QueueLength,Move Status...)
Copy Status Description Mounted The active copy is online and accepting client connections. Only the ...
- [iOS微博项目 - 4.3] - 设置每条微博边框样式
github: https://github.com/hellovoidworld/HVWWeibo A.设置每条微博边框样式 1.需求 不需要分割线 每个微博之间留有一定的间隙 2.思路 直接设 ...
- uva656 Optimal Programs
Optimal Programs As you know, writing programs is often far from being easy. Things become even hard ...
- Period II---fzu1901(Next数组)
题目链接:http://acm.fzu.edu.cn/problem.php?pid=1901 给你一个字符串 s 求出所有满足s[i] == s[i+p] ( 0 < i+p < len ...
- vue状态管理器(用户登录简单应用)
技术点:通过vue状态管理器,对已经登录的用户显示不同的页面: 一 vue之状态管理器应用 主要用来存储cookie信息 与vue-cookies一起使用 安装:npm install vue-co ...
- MySQL 一些让人容易忽视的知识点
一下都是MySQL在实际开发中,经常容易让人忽视的点,希望对您有帮助,帮您越过这些坑. 一:MySQL AND优先级大于OR 今天上班时在写一个业务的时候又发现了一个MySQL的问题: 我们的业务是这 ...