Version control 有没有办法配置本地mercurial存储库以阻止其推送到远程存储库?

Version control 有没有办法配置本地mercurial存储库以阻止其推送到远程存储库?,version-control,mercurial,Version Control,Mercurial,在git中,对于使用特定工作流的团队,有一种常见的做法是删除对上游存储库的推送访问。这可以通过更改配置来实现。这可以防止开发人员在没有适当的审查过程的情况下意外地推动更改。它仍然允许用户从存储库中提取最新的更改 有没有办法配置本地mercurial存储库以阻止其推送到远程[只读]存储库?您至少有两种方法:本地和远程 远程回购类型 在推送目标上添加pretxnchangegrouphook,它以最简单的形式拒绝推送(全部或部分) #!/bin/sh echo 'No pushes here' ex

在git中,对于使用特定工作流的团队,有一种常见的做法是删除对上游存储库的推送访问。这可以通过更改配置来实现。这可以防止开发人员在没有适当的审查过程的情况下意外地推动更改。它仍然允许用户从存储库中提取最新的更改


有没有办法配置本地mercurial存储库以阻止其推送到远程[只读]存储库?

您至少有两种方法:本地和远程

远程回购类型 在推送目标上添加
pretxnchangegroup
hook,它以最简单的形式拒绝推送(全部或部分)

#!/bin/sh
echo 'No pushes here'
exit 1
本地类型 Add,它将push重新定义为“某物”,而不是真正的push,但在文档中记录注释

可以使用与现有别名相同的名称创建别名 命令,然后将覆盖原始定义。这是 几乎总是个坏主意


关于这个@MarcosZolnowski并不完全一样。这就要求远程回购端进行配置更改,以禁止任何原因的所有推送。我要求对本地回购进行更改,以禁止从这个特定的本地回购推送到另一个特定的远程回购。您实际上是如何添加您提到的挂钩的?@DaveInCaz-显然是写入target的hgrc中的