我正在寻找一种在 cloudControl 容器上自动获取这些信息的方法。所以我写了一个小 Symfony2 服务,它返回一些 git 信息,例如提交哈希
public function getCommitHash() {
exec('git rev-parse --short HEAD', $output);
$hash = implode(', ', $output);
return $hash;
}
如果我在本地机器上运行它,它会返回正确的缩短提交哈希。但是,如果我将它推送到我的 cloudControl 机器,则返回是null
. 我手动连接到机器并在命令行上运行此命令(在www
文件夹中,即存储库被推入的位置)。这会引发以下错误:
fatal: Not a git repository (or any parent up to mount parent )
Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set).
我真的很困惑,因为我以为我只是将整个存储库(包括.git
文件夹)推送到远程机器上。为什么会出现此错误,如何获取 git 信息?