2

我正在尝试将 PHPFog 作为主机,我真的很喜欢它的工作方式。

但是,我最近推动的一个项目遇到了问题。该项目包含一个子模块,PHPFog 表示它支持该子模块,但是该子模块是另一台服务器上的私有存储库——需要 SSH 用户和密码。PHPFog 显然不知道这一点,因此子模块更新和初始化假定失败。

在 PHPFog 上使用私有子模块是否有推荐的解决方法?我可以以某种方式将子模块合并到超级项目本身并以这种方式推动吗?或者我可以重新配置子模块以包含 SSH 登录信息,让 PHPfog 成功初始化它吗?

编辑:作为一个快速修复:我克隆到一个临时目录,删除子模块中的 git 文件夹,并作为单个 repo 上传到 phpFog。这不是我正在寻找的理想解决方案。

4

2 回答 2

1

有一个新工具允许将带有 git 子模块的应用程序推送到 PHP Fog。正常的 git 推送将不再为您获取子模块,并且您的应用程序将无法部署。

请参阅:PHP Fog 的 PF CLI

要使用 git 子模块推送应用程序,请首先设置您的帐户。

pf setup

列出您的应用程序以验证您的登录并获取要克隆的应用程序的 ID。

pf list apps

使用 pf 工具克隆应用程序。请务必备份您现有的 git 文件夹。

pf clone <app_id> <folder>

这是使子模块工作的关键:从现在开始,您必须使用update命令而不是 push命令进行部署。

pf update

注意: pf setup 命令将设置一个新的 ssh 密钥并自动为您上传。它还在 ssh/config 中为此创建了一个新别名。使用此工具后,您必须使用它来克隆您的应用程序,尽管您仍然使用 git 命令来添加和提交更改。如果您使用 git 子模块,则必须使用 pf update,git push 会破坏您的应用程序。

于 2012-01-29T08:07:11.223 回答
0

目前 PHPFog 不支持私有子模块。您可以使用 composer 之类的东西在本地管理包并将完成的产品推送到 PHPFog。

于 2012-01-29T00:11:05.387 回答