无法在git自定义预接收挂钩中运行git命令

无法在git自定义预接收挂钩中运行git命令,git,gitlab,githooks,gitlab-ce,Git,Gitlab,Githooks,Gitlab Ce,我正在我的服务器上运行一个gitlab ce副本,我想做一个自定义pre-receive钩子,在提交的代码中搜索TODO,如果找到任何TODO,则不允许推送。既然我在.git目录中,而不是在实际的代码目录中,那么如果我没有权限访问git命令,我如何访问提交的代码/文件 多谢各位 您不必在实际的代码目录中就可以访问git命令。如果无法访问git,请更改$PATH。请记住服务器端挂钩可能很危险。我选择使用客户端钩子+CI。不是那样的。我可以访问git,但它告诉我:此操作必须在工作树中运行。我尝试运行

我正在我的服务器上运行一个
gitlab ce
副本,我想做一个自定义
pre-receive
钩子,在提交的代码中搜索TODO,如果找到任何TODO,则不允许推送。既然我在
.git
目录中,而不是在实际的代码目录中,那么如果我没有权限访问git命令,我如何访问提交的代码/文件


多谢各位

您不必在实际的代码目录中就可以访问git命令。如果无法访问
git
,请更改
$PATH
。请记住服务器端挂钩可能很危险。我选择使用客户端钩子+CI。不是那样的。我可以访问git,但它告诉我:
此操作必须在工作树中运行。我尝试运行的是
gitdiff index
命令。