版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/lq2010v/article/details/81003965
1. 搭建环境
- 服务端
工作环境 : 阿里云服务器ECS
操作系统 : CentOS7- 客户端
操作系统 : Windows10
1. 概述
git是分布式的,每一个安装了git的电脑,既是客户端,也是服务器,git与git之间可以相互通信,而我们所谓的git服务器,实际上和我们自己的电脑没有什么本质上的差别。但是,我们为了更有效的管理项目,都采取中心化的管理方式,因此创建一个“git服务器”,作为其他所有人提交代码的最终终端。
2. 服务端安装
安装git
# sudo yum install git -y
创建git用户
用来管理和操作git服务
# sudo adduser git
创建证书登录
所有的用户密钥都存放在/home/git/.ssh/authorized_keys
文件里
# cd /home/git/
# mkdir .ssh
# touch .ssh/authorized_keys
初始化git仓库
因为服务器上的Git仓库纯粹是为了共享,所以不让用户直接登录到服务器上去改工作区,并且服务器上的Git仓库通常都以.git结尾。然后,把owner改为git
# cd /usr/local ---自己喜好git的存放路径
# mkdir git
# cd git
# sudo git init --bare sample.git
# sudo chown -R git:git sample.git
禁用shell登录
其实Liunx对没有密码账户是不能用于登入操作的,所以如果操的git用户没有密码是可以不需要这一步,但是如果有需求要设置密码但又不想shell登入可以通过编辑/etc/passwd
文件完成,找到类似下面的一行:
~ git:x:1001:1001::/home/git:/bin/bash
改为:
~ git:x:1001:1001::/home/git:/usr/bin/git-shell
3. 客户端安装
安装git
Windows系统的用户在GIT官网下载Windows版本,一路下一步安装
生成公钥
安装好后点击右键选择Git Bash Here
,三次回车后,就能看到公钥的生成,一般都在C:users/用户名/.ssh/id_rsa.pub
打开copy里面的内容到服务器端git的authorized_keys
文件中
$ ssh-keygen -t rsa -C "your_email"
测试
最后在本地git仓库右键选择Git Bash Here
输入下面指令,看下服务端的文件夹是不是被下载下来了吧!
$ git clone git@server:/usr/local/git/sample.git