linux git 自动拉取,自动拉取远程git仓库代码

通常我们使用git时本地开发,上传到远程仓库中,服务器在拉取远程仓库的代码,这样就需要开发人员要经常登录到服务器中手动拉取代码,是比较繁琐的。

今天分享一个git自动拉取线上代码的shell脚本。

脚本里面涉及了邮件的发送,日志的记录,正则表达式等知识点,git的操作

首先了解一下git基本流程:

本地开发:git add .  // 添加      git commit -a -m'注释'  //提交    git push origin develop // 推送到远程仓库中

服务器:此时在服务器上拉取代码

1、进入到项目目录git diff 查看是否有修改的文件,如果有则进行提交,如果没有进行第二步

2、如果第一步没有输出的结果,则可以直接 git pull origin develop 拉取远程仓库代码

上述过程需要每一次提交代码都需要进行的过程,相对来说是比较繁琐的

下面的这个shell可以很方便的将服务器的流程自己去执行

#!/bin/sh

export LANG=en_us.UTF-8

export LC_ALL=zh_CN.UTF-8

cd 项目路径 #进入到项目的根目录中

gitDiffInfo=`git diff` # 使用git diff 查看是否有修改 如果服务器上的代码没有修改的输出的内容为空,如果有修改将会把修改的路径和修改的文件以及内容输出

egreps="Already up-to-date.$" # 正则表达式 匹配拉取远程代码是否有跟新,如果结尾为这一串字符则表示远程仓库没有更新

你可能感兴趣的:(linux,git,自动拉取)