【发布时间】:2009-05-11 15:25:31
【问题描述】:
这应该是一个非常简单的运行,但由于某种原因,它不适用于我的 Mercurial 存储库。我想要的只是让远程仓库在有人推送时自动运行hg update。所以我的 .hg/hgrc 文件中有这个:
[hook]
changegroup = hg update
很简单,对吧?但由于某种原因,这永远不会执行。我还尝试编写一个执行此操作的 shell 脚本。 .hg/hgrc 看起来像这样:
[hooks]
changegroup = /home/marc/bin/hg-update
hg-update 看起来像这样:
#!/bin/sh
hg help >> /home/marc/works.txt;
hg update >> /home/marc/works.txt;
exit 0;
但同样,这不会更新。 hg help 的内容写出到works.txt,但没有写出hg update。我在这里有什么明显的遗漏吗?这已经困扰我好几天了,我似乎无法让它发挥作用。
更新
好的,再次使用-v 开关从我的工作站推送到远程仓库不会打印任何详细消息,即使我在.hg/hgrc 中有那些echo 行。但是,当我从同一文件系统上的 repo 克隆进行推送时(我通过 SSH 登录),这就是我得到的:
所以它有效,但只有当我从同一个文件系统推送时。如果我尝试通过网络从另一个工作站推送到 repo,它不起作用。
【问题讨论】:
-
我遇到了完全相同的问题。您已经找到解决方案了吗?
-
从未找到解决方案。我很久以前就放弃了。
标签: version-control mercurial mercurial-hook