您的位置:首页 > 运维架构 > Linux

在Linux下使用gitosis配置安装Git服务器

2011-07-31 14:15 671 查看


Step 1,准备

首先,确认你的计算机中装有Git,python,openssh-server,python-setuptools等软件。

如果是在ubuntu,命令如下:

sudo apt-get
install git openssh-server
python2.6 python2.6-setuptools


Step 2, 生成Key,添加Server


Key的生成

使用命令sshkeygen,按照他的提示,一步一步生成,即可。(一直安回车的话,会生成一个空密码的key,这个一般情况下会满足大部分需求)

​完毕后会在 ~/.ssh/目录下生成id_rsa.pub文件。这个是key'的公钥


安装gitosis

git
clone git://eagain.net/gitosis.git

cd gitosis

python setup.py install


添加Server

创建新的用户,git

sudo useradd

讲前两部生成的id_rsa.pub复制到git的home目录下,(scp,cp按照情况来)

输入命令

gitosis-init < id_rsa.pub

chmod 755 /home/git

chmod 700 /home/git/.ssh

chmod 644 /home/git/.ssh/authorized_keys

这样,就会创建一个默认的gitosis-admin.git版本库


Step 3,管理git服务器

使用客户端的机器,也就是刚才生成key的机器

git
clone git@127.0.0.1:gitosis-admin

就会创建出一个版本库,叫做gitosis-admin

其中有个gitosis.conf 文件,和keydir目录

conf文件是配置文件,可以配置用户的权限,keydir目录是用户的公钥存放的目录,以 用户名.pub 的形式存下来


添加一个新用户:

讲新用户的pub key放入keydir中,命名为XXX.pub,在conf中进行配置

讲其添加到之前的一个项目组中,或新建个组

[group gitosis-admin]

writable = gitosis-admin

members = reyoung@Reyoung

例如如上描述的就是,gitosis-admin组,对gitsis-admin版本库可写,成员有reyoung@Reyoung

修改完所有配置文件,commit&push即可


添加一个新项目

1、在writeable中添加项目名称

2、在本地初始化项目,示例如下

cd ..

mkdir myNewProject

cd myNewProject

git
init

git
remote add origin git@someServer.com:myNewProject.git

3、将本地初始化的项目,提交到Server

git
add .

git
commit -a -m "This
is my initial commit for myNewProject"

git
push origin master:refs/heads/master
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: