git:如何记录repo已被关闭?

时间:2017-09-18 07:31:35

标签: git configuration repository transfer

我在server1.example.com有一个旧的repo服务器,我想将所有git存储库转移到git.example.com。 git是否支持配置server1.example.com,以便在任何人仍然针对fetch尝试pushcloneserver1.example.com工作区时,他们会收到自定义错误消息说" error: server1.example.com has been shut down, use git.example.com instead"?

1 个答案:

答案 0 :(得分:2)

您可以使用简单的git hook:Hooks是在某些情况下执行的脚本。您可以设置服务器端预接收挂钩,当有人试图推送到您的存储库时始终运行,它始终以退出代码1退出(因此将拒绝每次推送)并显示error: server1.example.com has been shut down, use git.example.com instead消息。 / p>

可以找到一个示例(可能对您的案例来说过于复杂)here

但这只适用于推送。对于clone herefetch here讨论<?php function list_cmp($a, $b) { global $order; echo "\$a=$a, \$b=$b </br>"; foreach ($order as $key => $value) { echo "\$value=$value </br>"; if ($a == $value) { echo "\$a=\$value, returing 0. </br>"; return 0; } if ($b == $value) { echo "\$b=\$value, returing 1. </br>"; return 1; } } } $order[0] = 1; $order[1] = 3; $order[2] = 4; $order[3] = 2; $array[0] = 2; $array[1] = 1; $array[2] = 3; $array[3] = 4; $array[4] = 2; array[5] = 1; $array[6] = 2; usort($array, "list_cmp"); ?> 个钩子的可能性,但任何一个都没有git内部功能。

相关问题