apt-get install git-core
apt-get install openssh-server openssh-client
apt-get install python-setuptools
git config --global user.name "your name" git config --global nser.email "your eamil"
git clone https://github.com/res0nat0r/gitosis.git
cd gitosis/
安裝html
python setup.py install
useradd -m git
打開git bash,就能夠在windows上面使用linux的命令行python
輸入以下命令,按照提示一步一步走下去linux
ssh-keygen -t rsa
就會在用戶目錄下生成以下文件git
把剛纔生成的公鑰上傳到git服務器上 好比上傳到/tmp目錄項目下,這樣能夠確保gitosis-init命令對其有讀取權限github
初始化gitosis 先切換到git用戶!!!!!!!windows
su git gitosis-init < /tmp/id_rsa.pub
這樣就會看到gitosis在git用戶的home目錄下,增長了兩個目錄以及一個gitosis配置文件的軟鏈接bash
gitosis是gitosis的根目錄服務器
repositories是倉庫存放目錄ssh
進入gitosis的管理倉庫工具
cd /home/git/repositories/gitosis-admin.git
進入存放公鑰的目錄,就能夠看到有一個剛纔咱們初始化gitosis使用的公鑰文件
注意!!! 上面的公鑰文件名必須和gitosis.conf配置文件裏面的成員名稱如出一轍
上面的能夠解釋爲:有一個組叫作gitosis-admin,裏面只包含了一個成員smile@xxx,這些成員對gitosis-admin倉庫具備讀寫權限
# git clone git@192.168.220.128:gitosis-admin.git git clone git@改成你的git服務器ip地址:gitosis-admin.git
[group test] members = smile@DESKTOP-IG7L8BJ writable = test
更改提交併push到git@ip地址:gitosis-admin.git
git commit -a -m "添加新倉庫test" git push
mkdir test cd test git init git remote add origin git@192.168.220.128:test.git touch README.md git add README git commit -m 'first commit' git push origin master
好比上面建立的test.git倉庫(也能夠稱爲一個項目:test) 新來了一個小夥伴,名叫:tom,須要把他加入test項目組,tom也須要有對應的公鑰和私鑰。 假如咱們如今是組長,gitosis的配置權限只有咱們有,tom的公鑰和私鑰生成有兩種方法:
也是用以下命令生成公鑰和私鑰
ssh-keygen -t rsa
接下來配置tom的公鑰到gitosis
git add ./keydir/tom.pub git commit -m "添加tom到test倉庫" git push
[group test] members = smile@DESKTOP-IG7L8BJ tom writable = test
git commit -a -m "添加新用戶tom" git push
如今tom就能夠在本身的電腦上clone test項目下來了
git clone git@192.168.220.128:test.git