一.前言
最近博主碰到一个需求,我在个人服务器上有个程序,但是我想修改它,显然在本地修改然后同步到服务器是最好的选择,因此Git便成了最好的选择,于是我便将自己的服务器搭建成了一个Git服务器,然后用来在本地和服务器上进行代码的同步。为方便日后查看,便有了此文,希望也能大家有所帮助。
注:本次实验是实验环境为CentOS 7.6
。
二.配置过程
2.1 安装Git
在安装Git前可以先检查一下服务器上是否已经安装了Git,若没有则需要手动进行安装。
# git安装
yum –y install git
# 验证是否安装成功
git --version
若是其他Linux系统如Ubuntu等,请自行查询相应的安装命令。
2.2 创建Git用户
# 创建git账户
sudo useradd git
# 设置git账户密码,需要连续输入两次密码
passwd git
# 查看git账户是否创建成功
cd /home
ls -all
若看到如下图所示的信息则说明Git安装成功:
2.3 配置免密登录
为避免每次访问服务器都要输入密码,可以配置一下免密登录。
步骤一:进入Git用户所在的目录并切换到Git用户:
cd /home/git
su git
步骤二:在git用户根目录下创建.ssh
目录:
mkdir .ssh
步骤三:进入.ssh
目录,创建用来保存用户ssh
登录的公钥的文件authorized_keys
:
touch authorized_keys
步骤四:.ssh
目录的权限必须是700
,而authorized_keys
的权限必须是600
,为确保权限正确可以使用下列命令进行设置:
sudo chmod -R 700 /home/git/.ssh
sudo chmod 600 /home/git/.ssh/authorized_keys
步骤五:将服务器本地和个人PC端创建的公钥复制进authorized_keys
,然后保存退出。
2.4 Git仓库
2.4.1 创建仓库
在/home/git/
目录下可以创建自己的Git仓库:
git init --bare 仓库名.git
# git init --bare demo.git
若创建成功,则会出现下述信息:
Initialized empty Git repository in /home/git/demo.git/
2.4.2 操作仓库
在个人PC端输入如下命令便可成功将仓库克隆下来:
# xx.xx.xx 表示自己的服务器IP
git clone git@xx.xx.xx:/home/git/demo.git
之后便可以在该仓库目录下进行各种操作,例如创建一个名为test.txt
的文本文件,然后用git
命令将其推到远程私有Git服务器上:
git add .
git commot -m "create test.txt"
git push
对应的操作截图如下所示:
在服务端本地,先创建一个目录,然后在该目录下同样使用git
命令将该仓库克隆一份:
git clone git@localhost:/home/git/demo.git
对应的操作截图见下图,可以看到我在本地创建的test.txt
已经同步到了服务器端。
然后,我们便可以在本地编辑文件,然后将其push
到服务器上,然后在服务器上利用pull
命令将修改拉到服务器端。
三.结语
Git服务器最常用的还是在多人之间进行代码的同步(像我这种奇怪的需求应该还是很少见的),其实还有一种更简便的操作:将自己本地和服务器的ssh
公钥添加到Github上,直接利用Github来进行同步,这样操作会更简单,唯一的缺陷是速度可能会比较慢。
以上便是本文的全部内容,要是觉得不错的话就点个赞或关注一下博主吧,你们的支持是博主继续创作的不解动力,当然若是有任何问题也敬请批评指正!!!