安装git

关于安装git  可以参考 http://gitolite.com/gitolite/install.html 里面有官方的介绍

1. Git 的工作需要调用 curl,zlib,openssl,expat,libiconv 等库的代码,所以需要先安装这些依赖工具
yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-devel
2. 然后到官网http://git-scm.com/download/linux下载最新版本源码安装,或者使用系统提供的包管理工具安装.
3. 下载后解压 进入文件夹
tar xzf git-2.3.5.tar.gz
cd git-2.3.5
4. 网上找了半天资料发现没有有用的自己翻看 readme来解决 通过readme 知道安装需要查看 install 文件 

Normally you can just do "make" followed by "make install", and that
will install the git programs in your own ~/bin/ directory.  If you want
to do a global install, you can do

$ make prefix=/usr all doc info ;# as yourself
 # make prefix=/usr install install-doc install-html install-info ;# as root

(or prefix=/usr/local, of course).

我这采用的是:

make prefix=/usr/local all
make prefix=/usr/local install

git --version  #如果能显示版本号,即表示成功

5. 为git增加专门用户

# adduser git

# passwd git

在git用户家目录下安装gitolite

6. 切换到 git用户

# su – git  //记住 切换后默认计入 git 家目录

如果切换后 变成

bash-4.1$  请参考 linux问题: 切换用户之后变成-bash-4.1$

7. 创建文件夹bin

$ mkdir bin  //如果不在 git家目录下 可以 输入 $mkdir -p $HOME/bin

8. 克隆gitolite源码

$ git clone https://github.com/sitaramc/gitolite.git 
$ ls 
bin  gitolite

 9. 安装gitolite

$ ./gitolite/install -to /home/git/bin/  或  $ gitolite/install -to $HOME/bin

$ cd bin/ 
$ ls 
commands  gitolite  gitolite-shell  lib  syntactic-sugar  triggers  VERSION  VREF

配置gitolite管理员

10. 生成管理员账户的公钥

# ssh-keygen   (此处指定本地root用户为管理员,键入回车使用默认值)

复制管理的公钥

# cp .ssh/id_rsa.pub /tmp/git.pub

11. 切换回git用户,为gitolite配置管理员

$ /home/git/bin/gitolite setup -pk /tmp/git.pub

 $ ls 
bin  gitolite  projects.list  repositories

管理员日常管理

12. 管理员clone管理库

# pwd 
/root/gitolite-admin 
# ls 
conf  keydir
13. 创建库、添加用户

例如某test123用户访问git服务器上的myFirstRepo库

test123用户向git服务器管理(此处是之前的服务器本地的root用户)提交自己的ssh无密码公钥

管理员将test123的公钥复制到 gitolite-admin/keydir/ 下

# cp test123.pub /root/gitolite-admin/keydir/

管理员创建myFirstRepo库,并给test123分配权限

# cd gitolite-admin/conf/ 
# vim gitolite.conf

默认内容为:

repo gitolite-admin 
    RW+ =   admin 
repo testing 
    RW+ =   @all

下边定义myFirstRepo库,并且指定用户权限:

repo gitolite-admin 
    RW+ =   admin 
repo testing 
    RW+ =   @all 
@myGroup=admin  test123 
repo myFirstRepo 
    RW+ =   @myGroup

注:此处@myGroup是一个组,给myGroup组赋予对myFirstRepo这个库的读、写、推送的权限(详细规则可参考gitolite的readme.txt)

管理员将对gitolite-admin的修改(建库、加用户)提交到git服务器

# pwd 
/root/gitolite-admin

# git add * 
# git commit -m

或者命令如下:

把gitolite-admin下的变更都commit,并push到服务器上

。服务器上的Gitolite会根据内容自动建立新的git版本库,并放置在服务器专有账号主目录下的repositories文件夹下:
git add conf
git add keydir
git commit -m "added foo repo, gave access to Jason"
git push
 

CentOS 如何安装git server + Gitolite 【配置不成功需要再测试2015-8-20】的更多相关文章

  1. CentOS 7安装TigerVNC Server

    http://blog.csdn.net/wamath/article/details/76003128 1. CentOS 7安装TigerVNC Server 本文介绍如何在CentOS 7上安装 ...

  2. vmworkstation安装unbuntu server 网络配置:NAT模式

    之前安装虚拟机测试环境的时候,习惯了使用桥接模式或者仅主机模式:今天偶然发现,其实NAT 模式的网络配置还是挺方便的. 在新建虚拟机的时候,选择网络模式为NAT,虚拟机创建完成之后,在vmworkst ...

  3. linux(centos)下安装git并上传代码些许步骤(亲自验证过的步骤)

     曾经听说了好多次github,但直到近期才第一次学习使用github来托管自己在linux下的代码! 说实话.我自己在使用的时候从网上查了好多教程.但总认为难以掌握(步骤过于繁琐),自己操作的时候还 ...

  4. Ubuntu 安装 SSH server 并配置 SSH 无密码登录

    https://hinine.com/install-and-configure-ssh-server-on-ubuntu/ Ubuntu 安装 SSH server 并配置 SSH 无密码登录 发表 ...

  5. centos 安装git服务器,配置使用证书登录并你用hook实现代码自动部署

    安装git服务器先安装依赖软件:yum -y install gcc zlib-devel openssl-devel perl cpio expat-devel gettext-devel open ...

  6. centos 7 安装git并配置ssh

    一.安装 1.查看是否安装git rpm -qa|grep git 有git加版本号就说明已经安装过了 2.安装git yum install git 3.查看git版本 git version 二. ...

  7. ubuntu 14.04 安装git server

    版本信息 ubuntu : 14.04.1 git version 1.9.1 perl v5.10.1 ssh OpenSSH_6.6.1p1 本次安装的git server使用gitolite实现 ...

  8. CentOS 6 安装 Python3.5以及配置Django

    http://www.jianshu.com/p/6199b5c26725 文/FiveStrong(简书作者)原文链接:http://www.jianshu.com/p/6199b5c26725著作 ...

  9. Git学习系列之CentOS上安装Git详细步骤(图文详解)

    前言 最早Git是在Linux上开发的,很长一段时间内,Git也只能在Linux和Unix系统上跑.不过,慢慢地有人把它移植到了Windows上.现在,Git可以在Linux.Unix.Mac和Win ...

随机推荐

  1. zookeeper集群配置

    zookeeper集群网上demo一大堆,补充一下一些不明白的地方 1 复制2份zookeeper,savle作为备份节点 2.配置zoo.cfg # The number of millisecon ...

  2. BZOJ 1599: [Usaco2008 Oct]笨重的石子( 枚举 )

    直接枚举 ------------------------------------------------------------------------------- #include<cst ...

  3. JSP内置对象---application

    application 对象   服务器启动后,就产生了application 对象.当一个客户访问服务器上的一个JSP 页面时,JSP 引擎为该客户分配这个application 对象,  当客户在 ...

  4. JavaScript 导学推荐

    基本开始js学习的时候,可能会觉得很混乱,一开始都是从一些简单的表单验证还有拷贝别人效果代码,然后再慢慢去深入了解.我是觉得js是需要一定语言编程基础,我是觉得随着深入,JS的里面实在不算太好理解,个 ...

  5. (Problem 35)Circular primes

    The number, 197, is called a circular prime because all rotations of the digits: 197, 971, and 719, ...

  6. 深入浅出—JAVA(5)

    5.编写程序

  7. Uva 1061 The Morning after Halloween

    基本思路是BFS: 1. 题目中已经说了,每相连的2X2格子中必有一个‘#’,也就是,每个点周围最多也就三个方向可以走.因此,可以把所有空格都提出来,形成一个图,直接遍历每条边,而不是每次判断4个方向 ...

  8. 第一种:NStread

    - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view, typica ...

  9. Loadrunner 运行场景时:missing newline in XXX.dat 错误解决

    脚本参数化类型为file,在controller里运行场景的时候,报了个missing newline的错误,查了一下,将参数化的dat文件中的最后一行补上一个空行就解决啦!! 如果遇到此错误,需检查 ...

  10. Jquery Ajax时 error处理 之 parsererror

    Jquery Ajax时 error处理 之 parsererror     01 $.ajax({ 02         type: "POST", 03         con ...