一、Git服务器搭建
1、 安装git和openssh:
sudo apt-get install git-core
sudo apt-get install openssh-server
sudo apt-get install openssh-client
1) 创建git用户
sudo useradd git
sudo passwd git
2) 创建仓库存放点:
sudo mkdir /home/repo
3) 修改仓库存放点权限,仅能供git用户使用
sudo chown git /home/repo
sudo chmod 700 /home/repo
4) 创建一个连接到git用户的home目录下
su git
ln –s /home/repo /home/git/repositories
exit
Note:mustswitch to git
2、 安装gitosis,一个GIT服务器管理工具,这个工具通过git来管理git服务器
git config –global user.name “kui.wfly”
git config –global user.email kui.wfly@gmail.com
sudo apt-get install gitosis
3、 创建git服务器管理员公钥(便于管理员在自己电脑管理git服务器,以下未测试)
如果你将作为git服务器的管理员,那么在你的电脑上(另一台pc)生成ssh公钥:
usr@pc1:~$ ssh-keygen -t rsa
将公钥拷贝到服务器的/tmp下:
usr@pc1:~$ scp .ssh/id_rsa.pubgit@<server>:/tmp
1) 修改密钥权限
sudo chmod a+x /tmp/id_rsa.pub
4、 运行gitosis
sudo –H –u git gitosis-init </tmp/id_rsa.pub
5、 配置gitosis文件
git clone
git@localhost:/home/git/repositories/gitosis-admin.git
cd gitosis-admin/
将团队成员的id_rsa.pub文件放到keydir目录下,文件名以其名字命名
如:wk.pub
修改团队成员权限
[gitosis]
[group gitosis-admin]
writable = gitosis-admin
members = root@ubuntu
[group wk]
writable = teamwork
members = wk wk1
以上表示wk用户有读写权限!wk与keydir下目录下相同
Note:change authorities must have root right
6、 创建一个空的工程目录,
su git
mkdir /home/git/responsitories/teamwork.git
cd /home/git/responsitories/teamwork.git/
git init –bare
然后在其他地方创建一个git原始工程:
mkdir teamwork
cd teamwork
git init
touch readme
echo “hello world!” >readme
git commit –am “initial version”
git push git@localhost:teamwork.gitmaster
7、 测试新创建的项目
mkdir test
cd test
git clone git@localhost:teamwork.git
echo “test1” >>readme
git commit –am “test1”
gitpush git@localhost:teamwork.git