安装 gitolite
请参考官方最新指南(有些老的操作说明已经不适合新版本了):http://gitolite.com/gitolite/fool_proof_setup/

前提 已经在服务器安装好gitolite了

一、用户管理
1、切换管理员(假设新管理员公钥在 keydir/admin.pub):
1.1、本地生成 并 拷贝公钥 id_rsa.pub:

$ ssh-keygen -t rsa -C "youremail@example.com" #生成密钥对
$ vi ~/.ssh/id_rsa.pub #拷贝本地公钥内的字符串,不能有换行,然后再黏贴到服务器目录 $HOME/.gitolite/keydir/admin.pub, 

1.2、服务器端

$ vi $HOME/.gitolite/keydir/admin.pub #刚才本地复制的公钥拷贝进来,保存退出
$ cd $HOME
$ $HOME/bin/gitolite setup -pk $HOME/.gitolite/keydir/admin.pub

2、用户权限修改(gitolite本地目录 比如: /Users/abs/gitadmin):
本地

$ git clone git@服务器IP地址:gitolite-admin.git
$ ls
# gitolite  gitolite-admin  testing
$ cd gitolite-admin
$ ls
# conf  keydir
$ cd keydir
$ ls
# admin.pub wanghui.pub
$ vi zhangke.pub #公钥复制进去,并保存
$ ls
# admin.pub wanghui.pub    zhangke.pub
$ cd ..
$ cd conf
$ ls
# gitolite.conf
$ vi gitolite.conf #添加新仓库
#   repo gitolite-admin
        RW+     =       admin wanghui
    repo wanghui
        RW+     =       admin wanghui zhangke #zhangke是新增的用户,对应公钥文件../keydir/zhangke.pub,保存退出
    repo testing
        RW+     =       @all
$ cd ..
$ git add .
$ git commit -m “add keydir/zhangke.pub  and add user zhangke to repo->wanghui”
$ git push

3、删除用户

本地改完后push

$ git rm keydir/liu.pub
$ git commit -am "删除用户liu"
$ git push

二、仓库管理

1、添加仓库 (本地改完后push)

$ vi $HOME/gitolite-admin/conf/gitolite.conf
# 追加如下 
    repo new-repo
        RW+     =   tom
        R       =   admin
$ git commit -ma "add repo new-repo"
$ git push

如果一个人管理很多个仓库,gitolite.conf可以这样写:

@adminrepos    =   php
@adminrepos    =   ios
    .
    .
    .
@adminrepos    =   android

repo @adminrepos
    RW+     =   admin

2、删除仓库
方法:本地 gitolite.conf 删除对应repo并push,然后去服务器删除对应目录
3、重命名仓库
方法:服务器重命名目标仓库(xxx.git => yyy.git ),然后 本地 gitolite.conf 内修改仓库名称(repo xxx => repo yyy), add/commit/push

其他信息请看帮助

ssh git@host info -h
Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐