0.摘要
本文主要介绍基于Linux服务器的Git仓库搭建和使用方法。
1.服务器端:安装git
CentOS服务器端:
使用yum安装git
#yum install -y git
-y参数:安装过程中如果有yes/no的选择问题,直接选择yes。
安装完成后,可以通过查看git版本确认是否安装成功。
git --version
2.服务器端:创建git账号
在服务器端建立专用的git账号,方便代码的管理。
id git #查看服务器上是否有同名账号
如果已存在,可跳过该步骤或更换账号名称。
如果不存在该账号,则会显示id: ‘git’: no such user,按下面步骤完成创建即可。
useradd git #创建名称为git的账号,也可以更换自己喜欢的账户名称
passwd ********* #为账号添加密码
创建Git仓库:
mkdir -p /Git/path/gitdemo.git
git init --bare /Git/path/gitdemo.git
记住一定要加--bare参数。
3.创建证书登录
为保证Git的安全性,需要创建ssh登陆证书,即将本地的ssh公钥存入服务器端即可。
step1:生成本地的ssh私钥和公钥:
ssh-keygen -t rsa -C "email@163.com" #生成本机的ssh key
cd ~/.ssh #进入.ssh文件夹
ls #目录下后存在id_rsa id_rsa.pub
其中,id_rsa.pub即是本地的公钥,将此公钥存入服务器端即可实现本地与服务器端的安全通讯。
step2:打开公钥文件,将内容存入服务器端的/home/git/.ssh/authorized_keys
文件中,一行一个。
或者使用命令完成:
ssh git@166.111.77.196 'cat >> .ssh/authorized_keys' < ~/.ssh/id_rsa.pub
其中,git为服务器端的账户名,.ssh/authorized_keys为服务器端authorized_keys文件的路径, ~/.ssh/id_rsa.pub为本地 id_rsa.pub文件所在路径。
4.本地:创建git仓库,并关联服务器
方式一:从服务器端clone
如果本地还未进行开发工作,则从服务器端clone下git仓库即可。
#step1:新建文件夹
mkdir my/work/path/
#step2:克隆远程库
git clone git@server_ip:/path/gitdemo.git
克隆需要输入服务器账号的密码。完成之后,即将服务器端远程库克隆到本地。
方式二:本地新建仓库,然后关联到服务器
如果本地已经完成一些代码,仅仅是需要上传到服务器上保存,可采用此方法。
先本地创建了一个Git仓库,然后添加到远程服务器上。
#step1:新建文件夹
mkdir my/work/path/
#step2:初始化本地git
git init
…… #进行相应的开发工作,并执行add,commit操作
#step3:设置远程服务器git地址
git remote add origin git@server_ip:/remote/path/gitdemo.git
#step4:提交到远程服务器
git push -u origin master #-u 仅在第一次上传时加上,之后的push操作都不需要-u参数
git push origin master #非第一次进行远程同步使用该命令
5.本地:修改版本并上传
我们在本地编写一个hello.py文件,之后执行add和commit操作,并上传到到服务器:
vim hello.py #编辑hello.py
git add hello.py #add hello.py
git commit -m "first commit" #commit hello.py
git push #上传到服务器端
上传完成后,我们到服务器端查看一下:使用git log命令,
可以看出,第一个文件版本已经成功上传。
此时,如果其他用户clone或者pull当前版本,就能得到最新的修改版代码了。
批量提交文件的时候,可以使用下面命令,将目录下所有文件全部提交:
git add *
6.从远程端更新代码
git pull origin master
也可以分部执行:
git fetch origin master
git log -p master..origin/master
git merge origin/master