今天GitLab push突然报错:
git push origin issue_232
Counting objects: 5, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 348 bytes, done.
Total 3 (delta 0), reused 0 (delta 0)
remote: hooks/update:10:in `require_relative': cannot load such file -- /home/git/repositories/test-project.git/lib/gitlab_update (LoadError)
remote: from hooks/update:10:in `<main>'
remote: error: hook declined to update refs/heads/issue_232
To git@gitlab.cmltechnology.cn:cml/jiangshu-sports-lottery.git
! [remote rejected] issue_232 -> issue_232 (hook declined)
原因是前不久刚刚将gitlab迁移到另一台服务器上。结果对比之后,发现,旧的正确的gitlab server上
/home/git/repositories/test-project.git/hooks/update 文件是一个link,指向
update -> /home/git/gitlab-shell/hooks/update
因此手动的删除该文件,并添加Link
rm update
ln -s /home/git/gitlab-shell/hooks/update update
这样查找的目录就变成了gitlab-shell,自然能找到文件。
只是一旦重新启动gitlab,update又变成了文件,push再次报错。以后写个脚本专门启动后处理一下吧。