CentOS配置git服務器詳解

一、在服務器上安裝git及做些操作

yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-devel

cd /usr/local/src

tar -zvxf git-2.2.2.tar.gz

cd git-2.2.2

make prefix=/usr/local all

make prefix=/usr/local install

二、查看版本號

git --version ?#如果能顯示版本號,即表示成功

三、在服務器安裝gitosis

yum install python python-setuptools

cd /usr/local/src

git clone git://github.com/res0nat0r/gitosis.git

cd gitosis

python setup.py install

#顯示Finished processing dependencies for gitosis==0.2即表示成功

四、在開發(fā)機上,生產(chǎn)密鑰并上傳到服務器上(用git bush即可)

ssh-keygen -t rsa ? #一路回車,不需要設置密碼 ?ssh-keygen -C 'you email address@gmail.com' -t rsa

#上傳公鑰到服務器(默認SSH端口22)(如果是windows下生成d,路徑在類似/c/Users/wanglei/.ssh/id_rsa.pub)

scp ~/.ssh/id_rsa.pub root@192.168.8.189:/tmp

五、服務器上生成git用戶,使用git用戶并初始化 gitosis?

# 創(chuàng)建git版本管理用戶 git

mkdir -p /home/git

useradd -r -s /bin/sh -c 'git version control' -d /home/git git

chown git:git /home/git

# 更改git用戶的密碼

passwd git

# su到git用戶

su - git

gitosis-init < /tmp/id_rsa.pub

#顯示以下信息即表示成功,可能是中文

#Initialized empty Git repository in /home/git/repositories/gitosis-admin.git/

#Reinitialized existing Git repository in /home/git/repositories/gitosis-admin.git/

#修改上傳權限:

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

#刪除密鑰

rm -rf /tmp/id_rsa.pub

六、在個人開發(fā)機上導出項目管理,可以在一個盤建個git文件夾,例如我的D://git

git clone git@192.168.8.189:gitosis-admin.git

七、在個人開發(fā)機增加及設置管理項目

cd gitosis-admin

# 查看git服務器已經(jīng)上傳密鑰

ls keydir ?

cat keydir/ltl@jackliu-ThinkPad.pub ?

#ltl@jackliu-ThinkPad.pub為已經(jīng)上傳的開發(fā)機生成的公密

#顯示密鑰 最后的字符串為 密鑰用戶名 這里為 ltl@jackliu-ThinkPad

vim gitosis.conf

#在文件尾增加以下內(nèi)容

[group test-git] ? ? ? ? ? ?# 具有寫權限的組名稱

writable = test-git ? ? ? ? # 該組可寫的項目名稱

members = ltl@jackliu-ThinkPad ?guangyun.ni@yeepay.com ? ? #該組的成員(密鑰用戶名) 多個用戶協(xié)同開發(fā)時,以空格分隔

# 如果要增加只讀的組 參考如下

# [group test-git-readnoly] ? ? ? ? ?# 具有都權限的組名稱?

# readonly = test-git ? ? ? ? ? ? ? ?# 該組只讀的項目名稱?

# members = ltl@jackliu-ThinkPad ? ? # 該組的成員

#提交修改

git add .

git commit -a -m "add test-git repo"

git push

八、在個人開發(fā)機上初始,增加及使用項目callcenter

在git文件夾下

mkdir callcenter

cd callcenter

git init

touch readme

git add .

git commit -a -m "init callcenter"

git remote add origin git@192.168.8.189:callcenter.git

git push origin master

九、增加協(xié)同開發(fā)者的公鑰key到git服務器?

#執(zhí)行 cd git/gitosis-admin/keydir 切換目錄

#把協(xié)同開發(fā)者的id_rsa.pub 文件里的數(shù)據(jù) 拷貝到 對應的開發(fā)者的 密鑰用戶名.pub 文件。如把密鑰用戶名 guangyun.ni@yeepay.com 的 id_rsa.pub 文件中文本 粘貼到 guangyun.ni@yeepay.com.pub 文件里,并保存

#然后將添加數(shù)據(jù)后的目錄更新到git服務器

git add .

git commit -am "add guangyun.ni@yeepay.com.pub file"

git push origin master

?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容