centos6.3搭建一个git服务器

来源:互联网 发布:pos机淘宝不能卖了 编辑:程序博客网 时间:2024/04/29 17:59

一.centos

    os: centos63(Final)

    git: 1.7.1

    gitolite

    步骤很简单,需要安装git, ssh支持,gitolite, 然后公钥 . 本文全部采用的yum包过来的.

  

1. 登录服务器,安装,(# 是root 登录后的.)

#yum install perl openssh git

装不上,那就装下面的依赖

#yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-devel

2.建立一个用户

#adduser --system --shell /bin/sh --create-home --home-dir /home/git git

 #cd /home/git

#mkdir repositories

#chown git:git -R ./repositories

#chmod 700 ./repositories

3.切换至刚建的git用户 ($ 表示用户) 

#su git

$git clone git://github.com/sitaramc/gitolite

$mkdir -p $HOME/bin

$gitolite/install -to $HOME/bin

这里可能会报错缺少模块,就需要 切换到root 安装缺失模块.比如perl-Time-HiRes 这个

$su - 

 输入服务器root密码

#yum install perl-Time-HiRes

#su git

$gitolite/install -to $HOME/bin

然后这里安装的就完了.


本机, 本机我这里是debian,

#ssh-keygen

#cd /root/.ssh

里面有id_ras.pub 和id_rsa ,一个是公钥,一个是私钥. 如果之前你装过openssl产生过密钥,那这里就不要覆盖了

复制到服务器的/tmp

#scp ~/.ssh/id_rsa.pub server_username@server_host:/tmp

输入密码

回到服务器, 

#cd /tmp

#mv id_rsa.pub admin.pub 

为什么要改成admin.pub 因为gitolite根据这个文件名来设立帐号.我这里用admin

#su git 切换到git用户

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

然后去/home/git/repositories 里面,可以看见仓库文件.gitolite-admin.git 和test.git 一个是管理仓库的,一个是测试用


本机拉服务器代码

#git clone git@server_host:gitolite-admin

进入仓库后可以看到conf 和keydir ,conf/gitolite.conf 是添加用户/仓库的配置, keydir 是放对应用户的公钥.

修改好后可以直接push了.


二.debian的


和上面一样,唯一需要注意的adduser 的参数不同

#adduser --system --shell /bin/sh --home  /home/git git 



原创粉丝点击