CentOS6.5配置git+gitolite服务器andWindows客户端配置

发布时间:2024-11-28

CentOS6.5配置git+gitolite服务器 and Windows客户端配置

CentOS6.5配置git+gitolite服务器

andWindows客户端配置

一、 安装git

1. # yum update

# yum install curl-devel expat-devel

openssl-devel zlib-devel perl-devel gettext-devel # mkdir -p /data/git

# groupadd git

# useradd -g git -d /data/git -s /bin/bash git

# passwd git //设置git用户密码

2.改变git目录权限

# chown -R git:git /data/git

# chmod -R 2755 /data/git

3.下载git

$ wget https://http:///pub/software/scm/git/git-2.6.2.tar.gz $ tar -xzvf git-1.7.2.3,tar.gz

$ cd git-1.7.2.3

$ ./configure --with-curl=/usr/local

$ make && make install

$ ln -s /usr/local/git/bin/* /usr/bin/

$ git --version #查看版本号,确实git是否安装成功

二、 安装gitolite

CentOS6.5配置git+gitolite服务器 and Windows客户端配置

# su – git

$ pwd

/data/git

$ mkdir bin

$ ls

$git clone https://http:///sitaramc/gitolite.git

或者git clone git://http:///ossxp-com/gitolite.git $ ls

bin gitolite

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

$ ls bin/

commands gitolite gitolite-shell lib syntactic-sugar triggers VERSION VREF

三、 客户端生成密钥对,为gitolite配置管理员

1.Windows安装git for windows2.6.2,安装完后打开Git Bash

$ ssh-keygen –f admin –C 20151030@http://

$ scp admin.pub git@123.203.252.99:/tmp/admin.pub

2. 切换到git用户,为gitolite配置管理员

$ bin/gitolite setup -pk /tmp/admin.pub

Initialized empty Git repository in /home/git/repositories/gitolite-admin.git

CentOS6.5配置git+gitolite服务器 and Windows客户端配置

/Initialized empty Git repository in /home/git/repositories/te

sting.git/

WARNING: /home/git/.ssh missing; creating a new one

(this is normal on a brand new install)

WARNING: /home/git/.ssh/authorized_keys missing; creatin

g a new one

(this is normal on a brand new install)

$ ls

bin gitolite projects.list repositories

四、 服务器ssh开启公钥登录

1. vim /etc/ssh/sshd_config,将下面几句前面的#号去掉 RSAAuthentication yes

PubkeyAuthentication yes

AuthorizedKeysFile .ssh/authorized_keys

AuthorizedKeysCommand none

AuthorizedKeysCommandRunAs nobody

2.重启ssh

service sshd restart

五、 配置gitolite,添加用户,添加库,用户权限管理

1. windows安装TortoiseGit

2. 新建git文件夹,进入,右键 Git Clone…

URL:git@123.203.252.99:gitolite-admin.git

CentOS6.5配置git+gitolite服务器 and Windows客户端配置

勾选Load Putty Key,选择你的私钥(此处需使用ppk格式私

钥,可以使用puttygen将私钥admin转换成admin.ppk) 点击OK即可clone服务器上的gitolite-admin文件夹

到本地

3. 添加用户

管理员将其他用户的公钥(如dong.pub)复制到gitolite-admin/keydir/下

4. 添加库

进入gitolite-admin/conf/,右键 Git Bash Here, $ vim gitolite.conf (此文件用于添加库和配置用户对库的权限)

repo gitolite-admin

RW+ = admin

repo testing

RW+ = @all

repo git-dong#新建库git-dong

RW+ = admin dong#设置用户admin dong有读写权限 将修改push到服务器,即可添加库和用户。

$ cd ..

$ git status #查看git库状态

$ git add keydir/dong.pub conf/gitolite.conf 或者git add .

CentOS6.5配置git+gitolite服务器 and Windows客户端配置

$ git commit –m “add repo git-admin;add user dong” 进入gitolite-admin文件夹,右键 TortoiseGit Push 点击OK即可。

5. 用户权限管理

在客户端clone gitolite-admin.git,编辑gitolite-admin/conf/gitolite.conf配置各用户权限。

1 @team1 = zc

2 @team2 = aws zc

3 repo gitolite-admin

4 RW+ = admin

5

6 repo ossxp/.+

7 C = admin

8 RW = @all

9

10 repo testing

11 RW+ = admin

12 RW master = junio

13 RW+ pu = junio

14 RW cogito$ = pasky

15 RW bw/ = linus

16 - = somebody

17 RW tmp/ = @all

18 RW refs/tags/v[0-9] = junio

在上面的示例中,我们演示了很多授权指令。 第1行,定义了用户组 @admin,包含两个用户 jiangxin 和 wangsheng。

第3-4行,定义了版本库 gitolite-admin。并指定只有用户 jiangxin 才能够访问,并拥有读(R)写(W)和强制更新(+)的权限。

第6行,通过正则表达式定义了一组版本库,即

CentOS6.5配置git+gitolite服务器 and Windows客户端配置

在 ossxp/ 目录下的所有版本库。

第7行,用户组 @admin 中的用户,可以在 ossxp/ 目录下创建版本库。

创建版本库的用户,具有对版本库操作的所有权限。

第8行,所有用户都可以读写 ossxp 目录下的版本库,但不能强制更新。

第9行开始,定义的 testing 版本库授权使用了引用授权语法。

第11行,用户组 @admin 对所有的分支和里程碑拥有读写、重置、添加和删除的授权。

第12行,用户 junio 可以读写 master 分支。(还包括名字以 master 开头的其他分支,如果有的话)。

第13行,用户 junio 可以读写、强制更新、创建以及删除 pu 开头的分支。

第14行,用户 pasky 可以读写 cogito 分支。 (仅此分支,精确匹配)。

CentOS6.5配置git+gitolite服务器andWindows客户端配置.doc 将本文的Word文档下载到电脑

    精彩图片

    热门精选

    大家正在看

    × 游客快捷下载通道(下载后可以自由复制和排版)

    限时特价:7 元/份 原价:20元

    支付方式:

    开通VIP包月会员 特价:29元/月

    注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
    微信:fanwen365 QQ:370150219