Gitlab diz "Torne o arquivo hook executável e certifique-se de que ele pertence ao git", mas eu liaquique um arquivo pode ser executável por proprietário, grupo, mundo. Então, qual deles eles querem dizer?
Agora estou mudando
-rw-r--r-- 1 git git 0 Jun 24 00:32 pre-receive
para
-rwxr--r-- 1 git git 0 Jun 24 00:32 pre-receive
Isso é suficiente para torná-lo executável para o proprietário?
Responder1
Eles significam "torná-lo executável pelo usuário que invocará o aplicativo". Geralmente é isso que significa "tornar um arquivo executável" quando nada mais é especificado.
Se apenas o git
usuário puder executar o arquivo, torne-o executável apenas pelo proprietário. Pode ser isso que eles querem dizer, já que é um gancho do lado do servidor. Sequalquer umdeve ser capaz de executar o arquivo, o arquivo precisa ser executável por todos (essa é a intenção menos provável).
Portanto (possivelmente com sudo
):
$ chown git pre-receive
$ chmod u+x pre-receive # or a+x if anyone should be able to run it
Responder2
Na verdade, o que propus acima funcionou. A resposta é fazer
-rwxr--r-- 1 git git 0 Jun 24 00:32 pre-receive