Git没有使用php / exec识别远程,但在bash

时间:2016-12-22 18:25:34

标签: php git bash

我正在使用VM(宅基/ laravel)尝试创建模板化存储库。

然而,虽然它看起来都很好但是当它推动时它似乎永远不会认出遥控器。

fatal: No such remote 'origin'

fatal: 'origin' does not appear to be a git repository
fatal: Could not read from remote repository.

以上是我通常会遇到的2个错误。

我尝试了一些命令来设置遥控器。

git remote add origin https:://url.git - 不添加远程(已检查的git配置)

git remote set-url origin https:://url.git - 不添加远程(已检查的git配置)

git config remote.origin.url https:://url.git - 设置网址,但仍无效。

这些是私人存储库,我使用https与用户:传递来处理它,因为我无法使用此设置轻松管理ssh密钥(换句话说,我被迫以这种方式使用HTTPS)。

通过php尝试命令后,我导航到ssh中的目录并运行推送。工作正常(如果我使用上面的第三个选项)。我使用了exechttps://github.com/kbjr/Git.php但最终都遇到了同样的问题。

Git版本是:2.7.2

PHP版本是:7.1.0

我唯一想到的是技术上在生成的那个上面有一个git repo。我在laravel中的临时文件夹中创建了repo,然后生成"模板"在将它推送到我在创建过程中创建的仓库之前(github api)。完成所有操作后,我会在本地删除它。但是,我没有看到任何可能与由回购协议下的回购引起的问题相关的错误"

1 个答案:

答案 0 :(得分:1)

想出来。

如果您使用github API创建一个repo,它会在返回成功响应之前实际创建存储库。因此,您需要强制脚本在推送之前等待。在这种情况下,迫使它等待5秒(sleep(5);)似乎已经解决了它。