ubuntu下git服务器的搭建(转)
时间:10-02
整理:3721RD
点击:
ubuntu下git服务器的搭建
1首先创建git专用用户 并设置密码
sudo adduser git
passwd git
2 下载gitolite(git用户下)
git clone git://github.com/ossxp-com/gitolite.git
3:还是git用户下
mkdir -p $HOME/bin $HOME/share/gitolite/conf $HOME/share/gitolite/hooks // 建立命令,conf,和hooks目录
cd gitolite/src
gl-system-install $HOME/bin $HOME/share/gitolite/conf $HOME/share/gitolite/hooks
把export PATH=/home/git/bin:$PATH写入到bash.rc里
4:修改gitolite/gl-setup
cd bin
vim gl-setup
把GL_PACKAGE_CONF变量改成上面安装gitolite的配置目录,如:
GL_PACKAGE_CONF=/home/git/bin/gitolite/share/gitolite/conf/ // 否则会打开一个空的~/.gitolite.rc,就不知道该如何往里写配置信息了
5:准备个admin用户
使用 ssh-keygen 生产管理员的公钥密钥对 默认目录在用户根目录下 .ssh/下 (也可以指定目录ssh-keygen -f xxxx)
将公钥 admin.pub copy 进 git 用户下
6:进入git 用户
gl-setup admin.pub (拷贝过来的公钥名字随便起)
会自动打开的.gitolite.rc文件:
修改$GL_PACKAGE_HOOKS,改成gl-system-install指定的hook目录即/home/git/bin/gitolite/share/gitolite/hooks
否则($GL_ADMINDIR(~/.gitolite)/hooks目录中将没有钩子脚本)钩子就不能正确设置, 就失去了gitolite提供给各个仓库的钩子功能
也可以修改gitolite自动建立的仓库根目录的名称$REPO_BASE, 默认是repositories, 也可以改成其他名字,如 repos本文使用默认repositories
但gl-setup执行之后就不要修改该名字
-- .gitolite.rc编辑完成后保存退出,继续自动执行:
出现如下信息就表示成功
create mode 100644 conf/gitolite.conf // 添加授权配置文件,包含了gitolite-admin & testing两个库的授权
create mode 100644 keydir/xxx.pub // 将gl-setup指定的公钥文件添加到keydir/下面
7:然后进入管理员的用户
git clone git@xxx.xxx.xxx.xxx:gitolite.git
8 进入clone 出的 gitolite-admin 目录 会有conf 和 keydir 目录 到此git服务器搭建完成可以添加用户了
1首先创建git专用用户 并设置密码
sudo adduser git
passwd git
2 下载gitolite(git用户下)
git clone git://github.com/ossxp-com/gitolite.git
3:还是git用户下
mkdir -p $HOME/bin $HOME/share/gitolite/conf $HOME/share/gitolite/hooks // 建立命令,conf,和hooks目录
cd gitolite/src
gl-system-install $HOME/bin $HOME/share/gitolite/conf $HOME/share/gitolite/hooks
把export PATH=/home/git/bin:$PATH写入到bash.rc里
4:修改gitolite/gl-setup
cd bin
vim gl-setup
把GL_PACKAGE_CONF变量改成上面安装gitolite的配置目录,如:
GL_PACKAGE_CONF=/home/git/bin/gitolite/share/gitolite/conf/ // 否则会打开一个空的~/.gitolite.rc,就不知道该如何往里写配置信息了
5:准备个admin用户
使用 ssh-keygen 生产管理员的公钥密钥对 默认目录在用户根目录下 .ssh/下 (也可以指定目录ssh-keygen -f xxxx)
将公钥 admin.pub copy 进 git 用户下
6:进入git 用户
gl-setup admin.pub (拷贝过来的公钥名字随便起)
会自动打开的.gitolite.rc文件:
修改$GL_PACKAGE_HOOKS,改成gl-system-install指定的hook目录即/home/git/bin/gitolite/share/gitolite/hooks
否则($GL_ADMINDIR(~/.gitolite)/hooks目录中将没有钩子脚本)钩子就不能正确设置, 就失去了gitolite提供给各个仓库的钩子功能
也可以修改gitolite自动建立的仓库根目录的名称$REPO_BASE, 默认是repositories, 也可以改成其他名字,如 repos本文使用默认repositories
但gl-setup执行之后就不要修改该名字
-- .gitolite.rc编辑完成后保存退出,继续自动执行:
出现如下信息就表示成功
create mode 100644 conf/gitolite.conf // 添加授权配置文件,包含了gitolite-admin & testing两个库的授权
create mode 100644 keydir/xxx.pub // 将gl-setup指定的公钥文件添加到keydir/下面
7:然后进入管理员的用户
git clone git@xxx.xxx.xxx.xxx:gitolite.git
8 进入clone 出的 gitolite-admin 目录 会有conf 和 keydir 目录 到此git服务器搭建完成可以添加用户了