git中的预取钩子功能

时间:2009-08-07 09:06:10

标签: git

在我的场景中,我在服务器上维护一个svn同步的git存储库。 我小组中的所有开发人员都使用此存储库来获取更新 开发者在获取最新更改之前,我找不到触发自动“git svn fetch”(或任何其他命令)的方法。
我目前的解决方法是让一个cron作业每5分钟同步一次svn相关的更改。 是否可以使用这种预取钩? 感谢

1 个答案:

答案 0 :(得分:2)

没有预先定义的钩子可以让你完全按照自己的意愿行事。

如果您的开发人员正在通过ssh获取,您可以为git-upload-pack创建一个包装器脚本,该脚本隐藏真实的git-upload-pack并在存储库上调用git svn fetch(同时绝对确定在执行真实git-upload-pack之前压缩所有输出和错误。

尽管如此,设置和制作可能非常繁琐。您可能最好为开发人员提供一种方法,以便手动调用远程存储库上的git svn fetch,并鼓励他们在执行此操作之前使用另一个执行此操作的替代提取别名(并等待它完成!)真实的获取。