如何自动保持两个裸git repos同步?

时间:2011-09-12 19:42:25

标签: git automation

我们已经通过SSH使用私有git存储库一段时间了,这对我们来说非常有用。现在,我们希望将只读版本用于部署代码,即允许远程用户检出部署代码但无法回送到repo。

(这是为了让我们部署到多个生产服务器,而无需从所有这些远程生产服务器设置对git服务器的SSH访问。)

到目前为止,我已经能够将私有部分的主要部分克隆到Web根目录并发布它:

$ cd /path/to/web/root/git
$ git clone --bare /repos/git/project-name project-name.git
$ cd project-name.git
$ touch git-daemon-export-ok
$ git --bare update-server-info
$ mv hooks/post-update.sample hooks/post-update

...但是现在/path/to/web/root/git/project-name.git中产生的回购注定要失去无关性,除非它从主要版本更新,我不会每天手动运行git fetch。我该如何自动更新?我应该定期通过cron脚本运行git fetch,还是提交后挂钩?

1 个答案:

答案 0 :(得分:2)

这是什么钩子,但如果他们都在同一台机器上,我个人只会使用一个符号链接。