欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

git服务器搭建和使用

程序员文章站 2022-06-13 20:05:57
...
前言:
git访问分两种,一种是用户名和密码,另一种是基于密钥。
如果是用户名和密码访问,则需要为每个用户在服务器中添加用户。
如果是基于密钥,则将客户端的公钥保存在服务端即可。

一、环境准备
Red Hat Enterprise Linux Server release 7.1 (Maipo)
下载git安装包
perl-Git-1.8.3.1-20.el7.noarch.rpm
git-1.8.3.1-20.el7.x86_64.rpm
二、安装
rpm -ivh git-1.8.3.1-20.el7.x86_64.rpm perl-Git-1.8.3.1-20.el7.noarch.rpm

三、初始化仓库
git init --bare /home/git/test.git
chown -R git:git /home/git/test.git

四、启用证书
sudo vim /etc/ssh/sshd_config

去掉以下注释
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile      .ssh/authorized_keys

sudo service sshd restart

五、服务端保存证书
mkdir /home/git/.ssh
vim /home/git/.ssh/authorized_keys
#保存客户端公钥(详见七、客户端密钥生成)
chown -R git:git /home/git
chmod 700 /home/git/.ssh
chmod 600 /home/git/.ssh/authorized_keys

六、关闭git用户登录服务器权限
vim /etc/passwd
修改 git:x:1001:1001::/home/git:/bin/bash 为 git:x:1001:1001::/home/git:/bin/git-shell
七、客户端密钥生成
#在gitBash中执行
ssh-keygen -t rsa -C git

#自动保存在C:\Users\zhenggm\.ssh
id_rsa(私钥)和id_rsa.pub(公钥)
#将id_rsa.pub里的内容保存到服务器的公钥库中
八、客户端使用
git clone git@192.168.8.41:/home/git/test.git

九、tortoiseGit免密登录
1)命令行执行PuTTYgen
2)在弹出界面load步骤七中生成的私钥
3)savePrivateKey生成tortoiseGit所需的私钥
4)在tortoiseGit->settings->remote->putty中,选择刚才生成的私钥
相关标签: git