0

从我的 Gogs Web 服务器克隆一个项目,然后我将一个文件添加到 Git 存储库,并将此提交推送到远程,但终端报告有关cannot spawn hooks/pre-receive:No such file or directory.

我检查了它并确保该pre-receive文件存在于 中server-side git-repository,并且克隆的文件名为 pre-receive.sample.

所以,我不知道为什么会发生这种情况,我能做些什么来解决它。请帮忙。

服务器端镜像:

在此处输入图像描述

客户端图像:

在此处输入图像描述

系统环境: 在此处输入图像描述

4

1 回答 1

0

pre-receive.sample就是这样——一个样本。无论如何pre-receive在客户端是没有意义的,所以这部分可以被忽略甚至从问题中删除。

hooks/pre-receive在服务器端更有趣。它存在,似乎服务器试图运行它但失败了。我怀疑 shebang 有问题——脚本的第一行指向解释器(很可能是 shell)来运行脚本。请验证服务器上是否存在 shell。例如,如果 shebang#!/bin/bash验证/bin/bash服务器上有文件并且可以运行该文件。修复 shebang——也就是说,将它指向一个现有的 shell,比如/bin/sh.

于 2018-11-30T08:29:58.460 回答