环境安装系列 - Linux上使用Gitosis管理git服务
来源:互联网 发布:md5和sha算法的区别 编辑:程序博客网 时间:2024/05/08 20:54
前面我们使用了非常简单的git服务器搭建环境的方法 环境安装系列 - Linux上搭建简易Git服务01
这里我们介绍使用Gitosis管理git服务。这边主要是centos环境。
安装git和gitosis
1. 如果你还没在服务器上安装git,则先用yum安装git服务器。
sudo yum install git-core
2. 下载gitosis。我们放在/home/目录下面。
sudo git clone git://github.com/res0nat0r/gitosis.git
3. 然后我们需要安装python,因为gitosis是python的。
sudo yum install python-setuptools
4. 然后就去gitosis目录里面执行一下python呗
cd gitosis/sudo python setup.py install
5. 我们需要创建一个git用户,并且在/home/目录下生成/home/git文件夹,这个文件夹我们会用来做git的仓库文件夹。
sudo useradd git
6. 生成ssh的key。可以参考文章《转载和积累系列 - linux 生成KEY的方法与使用 》
ssh-keygen -b 2048 -t rsa因为我们使用admin账号登陆,所以key会生成在/home/admin/.ssh/目录下面。
[admin@localhost .ssh]$ lsid_rsa id_rsa.pub known_hosts
7. 初始化Gitosis。这边使用服务器上的public key,所以服务器本身就可以管理gitosis-admin这个仓库。
gitosis-admin仓库主要是用来管理git的用户组以及配置文件的。
sudo -H -u git gitosis-init < /home/admin/.ssh/id_rsa.pub如果出现下面的情况,就是创建成功,该公钥的拥有者就能修改用于配置 Gitosis 的那个特殊 Git 仓库了。
[admin@localhost home]$ sudo -H -u git gitosis-init < /home/admin/.ssh/id_rsa.pub [sudo] password for admin: 初始化空的 Git 版本库于 /home/git/repositories/gitosis-admin.git/重新初始化现存的 Git 版本库于 /home/git/repositories/gitosis-admin.git/
8. 对Gitosis钩子文件夹设置为可执行的权限。
sudo chmod 755 /home/git/repositories/gitosis-admin.git/hooks/post-update
9. 进入我的/home/admin目录,并且克隆gitosis-admin仓库
git clone git@localhost:gitosis-admin.git可以进入gitosis-admin目录看一下文件夹:
[admin@localhost gitosis-admin]$ lsgitosis.conf keydirgitosis.conf:主要用于配置用户组和用户权限,以及git的项目仓库
keydir:存放每个用户的public key
10. 我通过服务器,将我自己的电脑上的public key放到keydir目录下面,并且在gitosis.conf中加入了gitosis-admin文件夹的可读写权限。
然后本地就可以下载gitosis-admin这个仓库了。
keydir目录:
gitosis.conf配置文件:
[gitosis][group gitosis-admin]members = admin@localhost.localdomainwritable = gitosis-admin
11. 创建一个project的仓库,my@abc用户拥有读写权限;test仓库,my@abc只有读的权限,则需要配置gitosis.conf文件。
[gitosis][group gitosis-admin]members = admin@localhost.localdomain my@abcwritable = gitosis-admin[group project]members = my@abcwritable = project[group test]members = my@abcreadonly = test
然后再本地初始化一个空的git项目,并且提交到远程服务器。
git initgit remote add origin git@192.168.136.100:project.gitgit push origin master
- 环境安装系列 - Linux上使用Gitosis管理git服务
- 环境安装系列 - Linux上搭建简易Git服务01
- linux环境搭建git服务器 使用gitosis
- 在Linux下使用gitosis配置安装Git服务器
- Linux 使用 Gitosis 架設 Git Server
- Git服务器Gitosis安装设置-git权限管理
- 阿里云下安装GIT和使用GITOSIS进行权限管理
- ubuntu11.10搭建git服务器, 使用gitosis管理git服务器
- 在centos 下安装配置基于gitosis 的git 服务
- 在centos 下安装配置基于gitosis 的git 服务
- 在centos 下安装配置基于gitosis 的git 服务
- 在centos 下安装配置基于gitosis 的git 服务
- 使用gitosis和tortoisegit打造自己的git服务
- 在MAC下使用gitosis来配置git服务
- 在MAC下使用gitosis来配置git服务
- 使用gitosis和git进行代码权限管理
- gitosis管理git的收藏
- 基于gitosis管理git服务器
- Linux Shell编程入门
- 织梦去掉留言板的验证码的方法
- 带外数据(out-of-band data)
- opengl :glut库
- Android---23---发送短信
- 环境安装系列 - Linux上使用Gitosis管理git服务
- 防止客户获取织梦后台后修改密码等行为的方法
- 图片存储到webapp同级目录
- 机器人视觉测量与控制
- VMwareTool的安装与卸载
- Android关于PagerAdapter的使用方法的总结
- 微博API接口的调用
- 关于easyui1.3表单不能提交,ajax请求提交表单没有反应
- Vim命令合集