Linux 与shell脚本的手工连续集成
我为与shell脚本的小型持续集成做了一个临时解决方案。 它从svn更新,然后将文件复制到站点的根目录。 看起来是这样的Linux 与shell脚本的手工连续集成,linux,bash,continuous-integration,Linux,Bash,Continuous Integration,我为与shell脚本的小型持续集成做了一个临时解决方案。 它从svn更新,然后将文件复制到站点的根目录。 看起来是这样的 cd ... update svn cp -R ... ... 然后把它放到crontab中。 嗯,这对临时工来说很好用。解决方案,但它希望进行一些改进,并以某种方式定义svn已被更改(出现了新版本),并且仅在这种情况下复制文件(好吧,它与每分钟的连接复制文件使服务器工作变慢) 但我是linux的普通用户:( 因此,问题是: 如何使用bash脚本定义svn得到新的提交,
cd ...
update svn
cp -R ... ...
然后把它放到crontab中。
嗯,这对临时工来说很好用。解决方案,但它希望进行一些改进,并以某种方式定义svn已被更改(出现了新版本),并且仅在这种情况下复制文件(好吧,它与每分钟的连接复制文件使服务器工作变慢)
但我是linux的普通用户:(
因此,问题是:
如何使用bash脚本定义svn得到新的提交,并且仅在本例中进行更新和其他操作,如复制文件。您可以在目录中执行“svn info”(并使用awk | grep |您最喜欢的工具)提取已签出内容的修订号。对复制到的位置执行相同操作。如果签出目录中的修订号高于目标目录中的修订号,则执行复制 假设您复制了所有内容,包括.svn目录 如果您排除了它们,那么您应该在更新之前输入“svn信息”,然后在更新之后再次输入,并比较这两个版本。停止 你到底为什么要这么做 有了80个完全免费、超级容易安装的CI工具,你为什么要开始用shell脚本和cron来破解自己的工具呢 除非您希望提高脚本编写/cron技能,并希望将构建自己的CI作为一个有趣的小场景来使用,否则您只是在这里浪费时间