g
搭建git远程服务器
实验准备:
centos 6.5 x64 仓库
centos 6.5 x64 线上应用服务器
win7 本地开发者电脑
1、linux安装git
yum -y install git
2、创建git文件存放的目录
mkdir -pv /data/git
3、创建git用户
useradd giter
echo ‘123456‘ | passwd --stdin giter
4、切换到giter用户及创建密钥
su - giter
ssh-keygen -t rsa一路回车
5、下载密钥对到win7和把公钥存放到giter用户
sz id_rsa*
cat `~/.ssh/id_rsa.put` >> authorized_keys
修改一下权限,否则无法登录
chmod 700 .ssh
chmod 600 .ssh/authorized_keys
6、测试利用密钥登录giter
登录前还需要修改一下sshd_config,修改以下项。
vi /etc/ssh/sshd_config
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile.ssh/authorized_keys
这项目最后再修改(不用密码登录)
PasswordAuthentication no
7、在服务器目录生成仓库(su -giter)
cd /data/git
git init --bare 3899w.git
chmod -R775 3899w.git
8、win7中clone仓库到本地,我这里是利用tortoisegit图形界面处理(首页需要安装)
克隆地址:ssh://giter@120.24.62.217:/data/git/3899w.git
到这里远程的服务器的搭建基本完成,但是一般这个只是一个仓库,如果需要发布到各个应用服务器就需要,利用web app工具进行界面上提交上线。
这里我们先不介绍上线的web app,但是可以先搭建上线的命令行提交上线
接下来就是在应用服务器上面操作(需要一个上线代码的用户wwwgit-自己创建)
1、安装git
yum -y install git
2、生成密钥对
ssh-keygen -t rsa
3、上传公钥到giter服务器(这里上传需要giter密码,这就是为什么前面要生前giter密码,并且允许登录的原因)
ssh-copy-id -i ~/.ssh/id_rsa.pubgiter@120.24.62.217
4、测试无密码登录giter
sshgiter@120.24.62.217
5、成功后就可以clone仓库代码到应用服务器应用即上线代码
gitclone ssh://giter@120.24.62.217:/data/git/3899w.git
6、最后记得修改不能让人用giter账号登录服务器
vim/etc/passwd
/bin/bash-> /usr/bin/git-shell
这个过程当中可能有些需要修改目录权限的问题,到时候直接把相关目录所属主和权限这样修改
仓库服务器
chown-R giter.giter /data/git
chmod-R 775 /data/git
应用服务器
chown-R www.wwwgit /data/www
chmod-R 770 /data/www
1
本文出自 “记录工作学习的轨迹” 博客,请务必保留此出处http://stephenliu.blog.51cto.com/6470474/1682371
原文地址:http://stephenliu.blog.51cto.com/6470474/1682371