今天尝试从客户端向安装了gitlab的服务器推送一个分支,结果得到以下的错误信息:
[root@warehouse git-sample]# git push origin master
git@192.168.7.82's password:
Counting objects: 3, done.
Writing objects: 100% (3/3), 224 bytes | 0 bytes/s, done.
Total 3 (delta 0), reused 0 (delta 0)
remote: GitLab: No user or key was provided.
To git@192.168.7.82:ite-pon/git-sample.git
! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'git@192.168.7.82:ite-pon/git-sample.git'
看上去是说gitlab往这个项目里塞了一个pre-receive的hook,这个hook检查报错,结果阻塞了push。
请问大家有没有见到过类似问题,有没有啥主意呀?谢了~
本人git还有点小白~望稍稍给予解释~
此外,如果是删hook的话我觉得可能不是一个好的解决方法,毕竟hook里有可能挂着gitlab所需要的东西,并且安全验证其实也是有必要的吧?
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
下面是详细信息:
服务器: GitLab & Git & Repository Info
[root@warehouse git-sample.git]# pwd
/opt/gitlab/apps/gitlab/repositories/ite-pon/git-sample.git
服务器: Configuration
[root@warehouse repositories]# grep git /etc/passwd
git:x:502:502:Git:/opt/gitlab/apps/gitlab/repositories:/opt/gitlab/git/bin/git-shell
客户端: Workspace Info
[root@warehouse git-sample]# pwd
/root/workspaces/git-sample/git-sample
[root@warehouse git-sample]# ls
readme.txt
[root@warehouse git-sample]# git branch
dev
* master
[root@warehouse git-sample]# git remote -v
origin git@192.168.7.82:ite-pon/git-sample.git (fetch)
origin git@192.168.7.82:ite-pon/git-sample.git (push)
客户端: SSH & Git Info
[root@warehouse git-sample]# git config --global user.name
Administrator
[root@warehouse git-sample]# git config --global user.email
admin@gitlab.xxxxxxxxxxx.com
[root@warehouse git-sample.git]# ls -l ~/.ssh/id_rsa.pub
-rw-r--r-- 1 root root 413 7月 1 15:51 /root/.ssh/id_rsa.pub