标签:inotify git
基于inotify实现nodejs的提交后自动同步
首先在一台server上使用nodejs+express启动一个服务器,并使用supervisor 支持修改文件后
自动重启的功能
然后在这个工程上添加git仓库的引用(指向同一个服务器的另一个git仓库所对应的位置)
然后在所有人的本地开发环境也从server仓库中clone git 工程,并进行开发。
当提交代码后,使用inotify监控server 的git仓库文件变化。
如果发生变化后,通知线上运行的server 进行一次git pull,操作,由于supervisor ,线上服务
将自动重启(更行),达到通过git提交自动更新线上服务的目的。
这里的关键是inotify这个shell脚本:
#!/bin/sh inotifywait -rme modify,attrib,move,close_write,create,delete,delete_self /develop/version_controller/AIS/aisweb/.git | while read file; do if [ "$file" == "/develop/version_controller/AIS/aisweb/.git/logs/refs/heads/ MODIFY master" ]; then echo ====== modify master!!!; cd /develop/AIS/aisweb/; git pull fi done
基于git和intotify实现的git提交服务器自动更新的功能
标签:inotify git
原文地址:http://power9li.blog.51cto.com/8267716/1629157