使用composer安装silverstripe时缺少某些文件夹和文件?

时间:2016-01-26 05:39:41

标签: composer-php silverstripe

当我在终端中运行$ composer install以使用以下composer.json文件安装silverstripe时,它不会带来某些文件夹/文件。例如,它没有引入mysite文件夹或assets文件夹以及主.htaccess文件等内容......

{
    "name": "silverstripe/installer",
    "description": "The SilverStripe Framework Installer",
    "require": {
        "php": ">=5.3.2",
        "silverstripe/cms": "3.2.1",
        "silverstripe/framework": "3.2.1",
        "silverstripe-themes/simple": "*"
    },
    "minimum-stability": "dev"
}

如果我从silverstripe网站运行create project命令,就会创建所有内容

E.g $ composer create-project silverstripe/installer /path/to/project 3.2.1

如何使用我的composer.json文件填写所有内容?

1 个答案:

答案 0 :(得分:3)

StackOverflow答案与此类似:Difference between require and install vs create-project in composer

create-project实质上克隆了以下存储库,其中包含您要查找的文件和文件夹: https://github.com/silverstripe/silverstripe-installer

它还有composer.json文件,并在克隆完成后运行composer install。

这是一个你可以开始工作的基础。

注意,您不希望使用composer install来替换.htaccess,因为这是您为每个项目编辑的内容(用于重定向和类似的事情)。

我们拥有自己的分叉安装程序,其中包含composer.json中常用的SilverStripe扩展程序。

在我们的“基地回购”中,我们有:

  • .htaccess包含您应该拥有的各种重定向的示例(强制www,开发域的例外等)
  • 我们自己的“项目”基础模板,其中包含大量助手
  • 我们在composer.json
  • 中常用的SilverStripe扩展程序

我们通过分配基础存储库然后克隆它来启动SilverStripe项目。然后我们在其上运行composer install,然后开始处理该项目。然后,我们将更改提交到与项目相关的分叉存储库。

另外,在我们的存储库中,我们有vagrant文​​件来启动一台带有所有好东西的开发机器。