在服務器(CentOs)上首先安裝git軟件
安裝gitosis
添加用戶git
sudo useradd -r -s /bin/sh -c 'git version control' -d /home/git git
設置權限
mkdir -p /home/git
chown git:git /home/git
ssh登陸驗證
生成公鑰
上傳公鑰
在服務端生成管理庫
看到如下提示說明安裝成功
Initialized empty Git repository in /var/spool/gitosis/repositories/gitosis-admin.git/ Reinitialized existing Git repository in /var/spool/gitosis/repositories/gitosis-admin.git/
修改上傳權限
同步配置文件
創建新的repositories
打開gitosis.conf文件,你將看到
[group gitosis-admin]
writable = gitosis-admin
members = nasa127@localhost
這個是管理組的權限,members中的用戶名就是剛才上傳的公鑰裡面的用戶名。 在這個文件後面加入:
[group myteam]
members = nasa127@localhost
writable = diablo3_spider
這裡你定義了一個叫myteam的組,授予nasa127@localhost這個用戶寫“diablo3_spider”這個repo的權限
git commit -a -m "Allow nasa write access to diablo3_spider"
git push
上面的操作就更新了服務端的權限。 下面就開始創建diablo3_spider的repo
mkdir diablo3_spider
cd diablo3_spider
git init
隨便加一些文件提交代碼:
git remote add origin git@YOUR_SERVER_HOSTNAME:diablo3_spider.git
git add .
git commit -a -m "initial import"
git push origin master:refs/heads/master
接下來,可以增加成員的公鑰到系統中了
cd gitosis-admin
cp ~/[email protected] keydir/
cp ~/[email protected] keydir/
git add keydir/[email protected] keydir/[email protected]
修改gitosis.conf
[group fractalist]
members = nasa127@localhost Administrator@SUNPX-PC tongzhongqian@localhost
writable = GTFund-iPad
提交修改:
git commit -a -m "Granted sunpx and qtz commit rights to diablo3_spider"
git push
其它成員就可以獲取代碼了
git clone git@YOUR_SERVER:diablo3_spider.git
其他
對Git設置端口號
git+ssh://git@YOUR_SERVER:PORT/GTFund-iPad.git
git remote add origin git+ssh://git@YOUR_SERVER:PORT/GTFund-iPad.git