如何用nodejs被动从git上拉取项目?

新手上路,请多包涵

公司在做一个项目,要求用nodejs被动从git上拉取项目,就是git上的代码有更新(同事有提交代码),就给nodejs发消息,nodejs监听到消息后,从git上拉取,更新本地文件,其实就是代替手动拉取代码,获取git是用的nodegit插件,希望大家给些建议,谢谢!

阅读 10.6k
4 个回答

这种事以前真没干过,不过感觉你们这个想法貌似没什么大用呢,画蛇添足的赶脚。比如你正在写代码,同事提交了,你这边被动的更新代码,如果出现冲突了,你就要停下来处理冲突,思路就断了。还有现在很多项目都进行分支管理,即使同事提交了,也不一定在你的分支上,你更新了也没有用呀。
对于这个想法,可以用类似手机推送的方式。当服务端检测到代码更新,就对客户端推送,客户端有脚本接收推送并发送请求更新代码。我能想到就这些了,不过这个想法感觉真心没什么用呀,手动更新代码的时间应该不会比你们开发这个功能的时间长。

git提供了Webhook. 在项目的Setting里可以找到.

简单的说, 就是项目发生变化, 会根据你的设置, 向指定URL发送POST请求. 这样, 根据POST请求进行相应的处理即可, 具体的请看手册

PS:
很多自动化部署的工具都是用这个的, 例如Travis CI Strider-CD, 如果不自己搭建, 可以用这些, 集成度很高, 而且可以自动部署. 请注意License.

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题