分两大步,分别在服务器端(虚拟机中的linux)和客户端(真机中的Windows)中操作
$ yum –y install git
(倒数第二级目录有且仅有.Git文件夹)
$ cd /usr/local
$ mkdir git
$ cd git
$ git init --bare learngit.git
$ useradd git
$ passwd git
$ chown -R git:git learngit.git
$ vi /etc/passwd
git:x:1000:1000::/home/git:/usr/bin/git-shell
其他的不用改,esc键,再输入:wq保存退出。服务端完成。
我使用的客户端为Git for Windows
$ Git config --global user.name "你的名字"
$ Git config --global user.email "你的邮箱"
$ cd F:
$ mkdir git
$ cd git
$ ssh-keygen -t rsa -C "你的邮箱"
一直回车(2-3次)
在当前目录下(若未改变目录,到C:\Users\Administrator.ssh\id_rsa.pub)找到.ssh目录下的id_rsa.pub文件,使用notepad++或其他软件(如记事本)打开,复制其中内容(类似如下:
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDQw54am1KGSyTHujgr1GdvwWA1cZK2PPAVzpK6hXvPKeoAQVR4fmkFVtBQY1+kAMQtuyFD7a4kZOzS8sPju9kDxmqMRhHxO6g9OA6r9BsS1dfmwDxdE7GNpK/t+639XeaKEvs6+BrxqEDc3kTSXyHG+geHO4idxh3e3VUkvejKmICOlMX10IjcZx5aU2kqh3FeSQH/R2YjSArCe7z0mHdZ06F3SPBT72DaJsvezCQ9btRCYANIMK4PXnPT5h2nCu3jQ8cSrzvPpPp6grJIwftFQYbKIyex8AVTaOH2AeIXTCgtD9tPzmx/VwqJS9HLJlQJ0c1p0Sfsl6YJyo6+oaf 你的邮箱
)
CentOS 7默认列表在/root/.ssh/authorized_keys,使用vi 编辑此文件输入刚才复制的内容,保存退出。
$ vi /root/.ssh/authorized_keys
//输入i修改
//按esc后输入:wq保存退出
在/home目录下创建.ssh目录,进入,创建authorized_keys文件
$ cd /home
$ mkdir .ssh
$ cd .ssh
$ vi authorized_keys
加入我们的公钥后保存退出。
$ cd F:
$ cd git
//把ip换成自己服务器的
$ git clone git@192.168.187.128:/usr/local/git/learngit.git
Cloning into 'project1'...
git@192.168.187.128's password:
warning: You appear to have cloned an empty repository.
若clone之后commit多此后仍然需要密码,执行5.3,若已经执行,检查公钥是否正确,然后退出Git for windows,再此打开Git for windows克隆。
检查一下.ssh目录是否存在。
(如出现以下错误:
ssh: connect to host 192.168.1.1 port 22: Connection timed out
fatal: Could not read from remote repository.
Please make sure you have the correct access rights and the repository exists.
)
原因:在客户端输入服务器的ip地址是错误的,或服务器的ssh服务未安装/打开。
解决方法:
使用root用户登录。
输入命令:rpm -qa | grep ssh
注:若没安装SSH则可输入:yum install openssh-server
安装。
输入命令:systemctl restart sshd
重启SSH服务。
命令:systemctl start sshd
启动服务 |
命令:systemctl stop sshd
停止服务
重启后可输入:netstat -antp | grep sshd
查看是否启动22端口。
输入命令:systemctl enable sshd 即可。
注:若是systemctl disable sshd 则禁止SSH开机启动。
在服务器端用root账号修改/home/git的权限。
如:$ chmod 775 /etc/git
详细操作步骤如下:
$ git --version
可能展示与实际安装版本不符。是因为默认使用了"/usr/bin"下的git
$ vim /etc/profile
export PATH=/usr/local/git/bin: PATH
$ source /etc/profile
$ git --version
这时候版本查看不一致的问题就解决了。
版权所有:可定博客 © WNAG.COM.CN
本文链接:https://cloud.tencent.com/developer/article/1616857
特别声明:除特别标注,本站文章均为原创,本站文章原则上禁止转载,如确实要转载,请电联:wangyeuuu@qq.com,尊重他人劳动成果,谢过~