照片是自动化的机械流水线。
作为程序员,每天一定要每天重复非常多的工作
如何消除重复性的工作? 要自动化自己的日常重复工作吗?
背景和需求
。开发者进入新公司后,通常会使用git进行代码的版本控制和协作
负责的代码库会随着时间的推移逐渐增加,最终可能会有1-20个代码工程
新项目中,有些需要开发新的功能特性,有些旧项目需要维护开发
各个项目可能有多人合作。 手动更新多个代码工程的代码,
有几个具有再现性的工作。 随着时间的推移
这个时间的消耗会更多,会浪费大量的编码和设计时间。
如果每天花2分钟提取代码,那么如果要维护20个项目
一年在正常工作日上班,需要173个小时。
目标提炼
这一批量更新代码的时间可以完全自动化。 也就是说,通过计划任务执行脚本的方式每天定期批量更新代码项目,每年节省86小时的时间
做设计和和她在一起的时间增加了。
实现路径
分:列举你正在维护的git代码工程,并简单地记下名字、类型;
如果没有,则在本地提取克隆代码,如果有,则在本地提取代码,进行一定的扩展;
定时任务执行你的任务,在上班之前执行;
列举维护的代码工程
文件名:代码项目.文本例如我输入了放置在github上的三个工程代码;
git @ github.com : Carter brother/springbootpractice.git|springbootpractice|spring boot练习代码|backend
git @ github.com : Carter brother/cola.git|cola|cola骨架代码|后端
git @ github.com : Carter brother/cat.git|cat|cat服务监视代码|backend
循环处理代码并可不断扩展
外壳循环处理一个即可,同时预约扩展;例如,对于java后端工程,需要在本地运行mvn clean安装;
vue前端工程的情况也需要同样的操作。
总体脚本如下所示
# #!/usr/cs dtd /环境基准
#set -e
功能重复扩展
服务类型=$ 1
appPath=$2
if [ $ {服务类型}=='后结束' ]; 沈恩
光盘$应用程序
git检查出口
英特尔拉动
mncleaninstall-d maven.test.skip=真
fi
}
'将工作维护代码拉入本地开发计算机'
导出路径=' $ { pwd } '
目前路径: $ { sh路径} '
导出代码基本路径=~/src /工作
echo '存储您设置的工作代码的目录是$ {代码基础} '
红外线! - d $ {代码基础路径}; 沈恩
echo '您设置存储工作代码的目录是因为${codeBasePath}它不存在,所以自动创建!'
mkdir-p $ {代码基础路径}
fi
导出代码项目='代码项目. txt '
echo '将逐行读取所维护的代码工程文件: $ {代码项目} '。
在线$ (铁路$/$ {代码项目} ' ); o
echo 'line conent: ${line} '
arr=(${line//|/}
重新命名=$ { arr [0] }
服务名称=$ { arr [1] }
服务标题=$ { arr [2]。
服务类型=$ { arr [3] }
服务名称:美元,服务类型: $ {服务类型}仓库的git地址:美元'
AP路径=' $ {代码基础路径}/$ {服务名称} '
红外线! - d $ {应用程序} ]; 沈恩
pwd
echo '代码$ {服务名称}不存在,本地需要git克隆'
代码基础路径
git克隆' $ {重建名称} '
else
光盘$应用程序
pwd
echo '代码$ {服务名称}存在,需要更新“获取”
英特尔拉动
fi
o扩展$ {服务类型} $ {应用路径}
完蛋
作为前提,必须在gitlab库中设置git的ssh公钥信息
如果不能放在这里,可以自己使用搜索引擎。
定时任务执行脚本
我用的是mac电脑。 可以使用crontab工具定时执行上述脚本。命令格式:
crontab [-u用户]文件
crontab [ -用户] [-e|- l|- r ] crontab的备份和恢复
# #备份
crontab-l $主页/.我的克隆
# #恢复
crontab $HOME/.mycron将文件放置在相应的位置,crontab -e进行编辑并编写命令即可。
# #每天6点引出代码
* *6* * sh~~/tool/code tool/pull code.sh
小结
一句话概括本篇,通过使用shell指定和定时任务crontab进行自动化批量更新,一年可以节省86个小时的代码工程。
我将继续分享我的Java软件编程知识和程序员的职业发展之路! 原创难,关注诚信,传输价格更高! 请注明出处,以互通有无的方式转载。 共同进步,欢迎交流。