防止从过时的Git仓库中拉出/推送并重定向到新的

时间:2014-08-27 10:06:08

标签: git dvcs trac

我们正在将Git存储库移动到新服务器。迁移后我们显然可以删除旧的存储库,因此当人们尝试推送或拉取时会出现错误并在维基上查找新的存储库URL,但是是否可以防止拉取和推送并显示新的URL错误信息?

1 个答案:

答案 0 :(得分:0)

你可以使用" pre-receive"钩。您需要在旧repo的pre-receive目录中创建名为.git/hooks的文件。确保它的可执行文件(sudo chmod +x pre-receive),并将文件的内容设置为以下内容:

echo;
echo "This is the old master repo.";
echo "The repo has been moved. Please update 'origin' accordingly:";
echo;
echo "git remote set-url origin user@new-server.com:/path/to/new/repo.git"
echo;

# Reject the push:
exit 1;

现在当有人试图推送旧回购时,它会返回上述消息并拒绝推送。