贝贝爸爸的程序人生

关注Seam、BPM
posts - 23, comments - 10, trackbacks - 0, articles - 32
  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

在centos下配置gitosis

Posted on 2011-05-26 15:46 贝贝爸爸 阅读(3298) 评论(0)  编辑  收藏
  • 安装python环境
#yum install python python-setuptools
 1 ##下载gitosis仓库到本地
 2 # git clone git://eagain.net/gitosis.git gitosis
 3 
 4 #安装 yum install python-setuptools
 
5 # python setup.py install --record uninstall.txt #记录需要卸载的东西
 6 
 7 #导入初始化公钥
 8 # su git
 9 [git@dev01 gitosis]$ gitosis-init < /tmp/id_rsa_yuan.pub 
10 Initialized empty Git repository in /home/git/repositories/gitosis-admin.git/
11 Reinitialized existing Git repository in /home/git/repositories/gitosis-admin.git/
12 
13 #进入自己设置的git仓库路径
14 # cd /var/git/
15 [root@dev01 git]# ln -s /home/git/repositories/ repo
16 #改变文件权限
17 [root@dev01 git]# chmod 755 /var/git/repo/gitosis-admin.git/hooks/post-update
18 
19 -----------------------
20 回到本机测试一下ssh连接
21 $ ssh git@192.168.250.231
22 ERROR:gitosis.serve.main:Need SSH_ORIGINAL_COMMAND in environment.
23 Connection to 192.168.250.231 closed.
24 
25 ##大功告成,说明gitosis生效
  • 提交本地工程到服务器
#首先clonegitosis-admin项目到本地
$ git clone git@192.168.250.231:gitosis-admin.git
Cloning into gitosis
-admin
remote: Counting objects: 
5, done.
remote: Compressing objects: 
100% (5/5), done.
remote: Total 
5 (delta 0), reused 5 (delta 0)
Receiving objects: 
100% (5/5), done.
啊啊
#修改查看到gitosis.conf
[gitosis]

[group gitosis
-admin]
writable 
= gitosis-admin
members 
= yuan
[group eontime]
writable 
= costdb \
           oryx
-editor \
           demo
/test
members 
= yuan
#如上所示,分有2个组类型admin和我们自定义的,你可以随便定义一个组,其实就是个权限集合
#
writable意思是,这个权限组有哪几个项目的写权限?这里是空格分开,如果太长就换行,例如demo/test的话,就是:
git remote add origin git@gitserver:demo/test.git

members就是有这个权限的组成员了,通过把有权限的开发者的公钥上传至keydir

最后将gitosis
-admin提交至远程
#git push remote origin master

ok,一切完成,服务端将同步有一个仓库了。

只有注册用户登录后才能发表评论。


网站导航: