Elam的git筆記:(一)Git與gitosis配置與基本操做

Git與gitosis配置與基本操做

遠程服務器:linux:centos6.5
客戶端:windows10python

首先是在遠程服務器上配置git時應該用新的單獨的用戶來管理git倉庫
在root下鍵入:linux

useradd –m gitadmin
passwd  gitadmin   ----設置密碼

而後將gitadmin設置爲管理員
修改sudoers文件ios

sudo vim /etc/sudoers

進入文件夾,找到下面root這行,並在下面添加
圖片描述git

gitadmin      ALL=(ALL)   ALL

保存,退出github

安裝git與gitosis

git:vim

sudo Yum install git git-core

python setup tool:segmentfault

sudo Yum install python-setuptools

獲取並安裝gitosiswindows

cd ~
cd /tmp
git clone https://github.com/tv42/gitosis.git  
cd gitosis  
python setup.py install

gitosis初始化

通常來講使用WINdows做爲倉庫的管理員,centos

在windows系統下下載git見另外一篇博客Elam的git筆記:(二)git的安裝與基本操做介紹服務器

將windows系統下生成的id_rsa.pub 拷貝到linux系統下

並放入/etc/tmp目錄下 不要.pub文件的名字

像gitosis添加公鑰並初始化

su gitadmin 
gitisis-init < /tmp/id_rsa.pub
cd ~
ls

能夠看到生成的管理員倉庫默認在gitadmin目錄下的repositories下

給gitosisadmin版本庫的腳本可執行權限:

chmod 755 /home/gitadmin/repositories/gitosis-admin.git/hooks/post-update

這樣子gitosis的初始化就宣佈成功了

初步管理gitosis

初始化gitosis以後,在遠程服務器端就自動建立了一個gitiosis管理的git倉庫,在repositories下:gitosis-admin.git
管理員在Windows端clone gitosis-admin.git,進入本身的管理員工做目錄。
打開git Bash,cd到準備放置倉庫的文件夾下
鍵入

git clone gitadmin@ip:gitosis-admin.git  IP指的是遠程服務器的地址,即能用ssh登錄的地址
cd gitosis-admin/

理論上你能夠看到一個文件夾keydir

一個config文件 gitosis.conf

權限設置所有在這個config文件裏面完成

vim gitosis.conf

能夠看到初始內容是

圖片描述

這個時候咱們來測試git是否有效
從新回到遠程服務器即,linux端
鍵入:

su gitadmin
cd /home/gitadmin/respositories
mkdir test22.git
cd test22.git
git init –bare

而後回到windows端
能夠用新用戶的公鑰,即在另一臺電腦上生成一個公鑰,並將公鑰考到clone下來的gitosis-admin倉庫下的keydir文件夾下
管理員將用戶的公鑰改成用戶名.pub
而後修改gitosis.conf
鍵入:

vim gitosis.conf

圖片描述

如圖 我增長了2個用戶,權限爲讀寫,若是你想設置只讀權限,那麼把writable改成readonly
:wq保存

提交對版本庫的修改

在git Bash下

git add .
git commit –m 「add hex zfq-pc to test22.git」
git push

Push成功後,用戶所在電腦就能夠clone這個test22的倉庫了

圖片描述

以上

相關文章
相關標籤/搜索