在自己的服务器搭建Git服务器

5次阅读

共计 1141 个字符,预计需要花费 3 分钟才能阅读完成。

环境和工具:

  • Server:CentOS 7.2
  • Client:Window 10
  • Tools:Git,Ssh

1. 服务端安装 Git

yum install git -y

配置 git 用户名和邮箱

git config --global user.name "user"
git config --global user.email "user@example.com"

liunx 添加 git 用户

adduser git

切换到 git 用户,进行 ssh 配置,在目录 /home/git 查看是否存在.ssh 目录,如果没有则新建.ssh 目录,并新建文件 authorized_keys(之后用来存储客户端的 ssh 公钥 id_rsa.pub, 一行一个)

mkdir .ssh
cd .ssh
touch authorized_keys

2. 客户端安装 git,并生成 ssh 公钥
客户端下载安装 git
一直默认安装之后,在鼠标右键面板会有 git-bash-here, 点击进入 git-bash, 也要先设置 git 用户名和邮箱,然后进入当前用户目录,查看是否已经配置 ssh, 之后生成 ssh 公钥和私钥

cd ~/.ssh
ssh-keygen -t rsa 
cat id_rsa.pub

(这里 ssh-keygen -t rsa 之后要按 3 下回车键,因为是提示是否有设置密码,如果设置了,之后要使用 git 都需要输入密码,所以这里就直接回车键,设置密码为空,之后会在当前文件夹.ssh 生成公钥 id_rsa.pub 和私钥 id_rsa, 然后打开公钥文件复制里面的内容,要把它粘贴在服务器上的 authorized_keys)

3. 服务端设置 authorized_keys
登录服务器,切换为 git 用户,并进入~/home/git/.ssh 文件夹,修改 authorized_keys 文件,把之前复制的 id_rsa.pub 中的内容粘贴上,之后修改 authorized_keys 文件权限, 之后再开放 git,.ssh 文件夹权限(开放权限这里很重要,不然 clone 等操作之后都会提示要输入密码,如果提示需要输入密码的,ssh 公钥配置这里肯定错了)

su git
cd /home/git/.ssh
vim authorized_keys
chmod 700 authorized_keys
cd /home
chmod 700 git
cd git
chmod 700 .ssh

===========================================================

设置完了之后就可以在客户端使用 git 了
我们先服务器上新建一个空仓库

cd /myweb
mkdir gitExample
cd gitExample
git init 

接着在客户端输入 git clone git@serverAddress:/repoPath 就可以了

参考:git 官方文档

正文完
 0