Linux服务器关联Git,通过执行更新脚本实现代码同步
1.在Linux服务器安装Git
yum install git -y
tips: 卸载Git : yum remove git
2.在Linux生成ssh key
1)创建用户
git config --global user.name "你的名字或昵称"
git config --global user.email "你的邮箱"
2)生成sshkey
ssh-keygen -t rsa -C "xxxxx@xxxxx.com"
# 三次回车即可生成 ssh key
#SSH-keygen参数说明
密钥类型可以用 -t 选项指定。如果没有指定则默认生成用于SSH-2的RSA密钥。这里使用的是rsa。
同时在密钥中有一个注释字段,用-C来指定所指定的注释,可以方便用户标识这个密钥,指出密钥的用途或其他有用的信息。所以在这里输入自己的邮箱或者其他都行。
3)查看你的 public key,并把他添加到码云
cat ~/.ssh/id_rsa.pub
# ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC6eNtGpNGwstc....
3.克隆远程仓库(到具体项目目录下面的非空目录)
#mkdir temp
#git clone --no-checkout git@github.com:XXX/XXX.git temp
-n, -- 就是 可以选择的多个字符的操作
--no-checkout don't create a checkout 不产生checkout操作
#mv temp/.git .
mv命令 可以重命名,也可以移动,如 mv a.txt b.txt
#rmdir temp
#git branch --set-upstream master origin/master 或者 git branch --set-upstream dev origin/dev
git branch --set-upstream 关联目的是如果在本地分支下操作: git pull, git push ,不需要指定在命令行指定远程的分支
#git reset --hard HEAD
第一次还原最新版本,相当于git pull
4.在项目目录下b2b2c或者ecstore,创建代码更新脚本 updatedev.sh
1)
cd /data/httpd/b2b2c
git pull
git reset --hard HEAD
/usr/local/php56/bin/php app/base/cmd update
echo 'Update Completed!'
2)
#!/bin/bash
cd /data/httpd/serbbc
git reset --hard HEAD
git pull
/usr/local/php56/bin/php app/base/cmd update
#./insert_predata.sh
echo 'Update completed.'
5.执行脚本
/bin/bash updatedev.sh