您的位置:首页 > 其它

git研究-通过ssh搭建小组级git服务器

2015-06-11 08:57 411 查看
(假设服务端和客户端都是Linux)centos6.5

1 服务端:
sudo yum install -y git-core # 安装git
sudo yum install -y openssh-server
sudo yum isntall -y openssh-client
sudo useradd -m git  #添加git用户
sudo passwd git #设置git密码

su git #切换到git用户
mkdir example.git
cd example.git
git -bare init #创建裸版本库

2 客户端:生成ssh-key,并且推送到git服务器上

通过 ssh-keygen -t rsa 生成
scp ~/.ssh/id_rsa.pub git@192.168.1.201:~/.ssh/    #scp  把ssh-key推送到git服务器

3 ssh git@192.168.1.201 用git用户登录服务器
cat ~/.ssh/id_rsa.pub >> authorized_keys   #建立信任关系
chmod 755 /home/git
chmod 700 /home/git/.ssh
chmod 644 /home/git/.ssh/authorized_keys   #这个权限的值需要注意。
exit

4 回到客户端
mkdir example
cd example
git init #初始化git
touch a.txt
git add a.txt
git commit -m 'fisrt commit' a.txt
git remote add origin git@192.168.1.201:example.git  #设置远程仓库
git push origin master #推送

5新增加一个开发者
a 在本地生成ssh-key
b 推送到git用户目录下,追加到git用户目录下 ~/.ssh/authorized_keys

6 设置git用户的操作只能与git相关 。
sudo vim /etc/passwd

找到:
git:x:502:503::/home/git:/bin/bash
替换成
git:x:1000:1000::/home/git:/usr/bin/git-shell

现在 git 用户只能用 SSH 连接来推送和获取 Git 仓库

OK~!


(假设服务端和客户端都是Linux)centos6.5

1 服务端:
sudo yum install -y git-core # 安装git
sudo yum install -y openssh-server
sudo yum isntall -y openssh-client
sudo useradd -m git  #添加git用户
sudo passwd git #设置git密码

su git #切换到git用户
mkdir example.git
cd example.git
git -bare init #创建裸版本库

2 客户端:生成ssh-key,并且推送到git服务器上

通过 ssh-keygen -t rsa 生成
scp ~/.ssh/id_rsa.pub git@192.168.1.201:~/.ssh/    #scp  把ssh-key推送到git服务器

3 ssh git@192.168.1.201 用git用户登录服务器
cat ~/.ssh/id_rsa.pub >> authorized_keys   #建立信任关系
chmod 755 /home/git
chmod 700 /home/git/.ssh
chmod 644 /home/git/.ssh/authorized_keys   #这个权限的值需要注意。
exit

4 回到客户端
mkdir example
cd example
git init #初始化git
touch a.txt
git add a.txt
git commit -m 'fisrt commit' a.txt
git remote add origin git@192.168.1.201:example.git  #设置远程仓库
git push origin master #推送

5新增加一个开发者
a 在本地生成ssh-key
b 推送到git用户目录下,追加到git用户目录下 ~/.ssh/authorized_keys

6 设置git用户的操作只能与git相关 。
sudo vim /etc/passwd

找到:
git:x:502:503::/home/git:/bin/bash
替换成
git:x:1000:1000::/home/git:/usr/bin/git-shell

现在 git 用户只能用 SSH 连接来推送和获取 Git 仓库

OK~!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: