我正在与其他人合作一个项目,如果有东西需要从 GitHub 提取,我希望及时收到通知(也可能直接通知其他参与者)。
我正在考虑创建一个 cron-job,每小时左右执行一次 git remote update,然后我的 shell 在提示的每次“渲染”时检查 git log HEAD..origin 中是否有任何项目。(通过 oh-my-zsh/lib/git)
有没有更好的方法呢?
答案1
如果您想在其他人向远程存储库发送更改时收到通知,您应该在该服务器上配置 post-receive 挂钩,git 源中的一个示例脚本用于在存储库收到更改时向一个或多个地址发送电子邮件,github 也应该支持这些脚本。
这样,您就可以知道何时执行“git pull”来更新您的存储库。
我不喜欢 crontab 作业的想法,如果服务器上的更改不能与本地 repo 合并,则可能会导致麻烦。
答案2
GH 上的 post-receive 钩子git fetch
在本地机器上运行,听起来它能实现你想要的功能。它同步变更日志,但不合并变更。