openfed / openfed-project
Openfed发行版构建的Drupal 9网站的项目模板。
Requires
This package is auto-updated.
Last update: 2024-09-21 09:08:02 UTC
README
这是一个使用Openfed发行版构建的Drupal 10网站的项目模板。
要求
- 至少安装PHP 8.1
- Composer 2.0
文件结构
有3个json文件
composer.json
这是您项目的主要json文件,您可以使用它来要求额外的存储库。您可以根据需要覆盖此文件,但请确保保持composer-merge-plugin设置和包的顺序,以使用下面的json文件。
有关composer-merge-plugin设置和选项的更多信息,请参阅https://github.com/wikimedia/composer-merge-plugin
composer.openfed.json
包含所有与Openfed相关的设置,一旦创建项目就不应更改。然而,您应定期根据此存储库中最新的版本更新此文件。
composer.patches.json
所有项目特定的补丁应在此设置。此存储库不应用补丁,因此此文件始终为空,它只是用作模板或起点。以下是如何使用命令行应用补丁的示例。
使用
安装
此项目需要安装composer。
注意:下面的说明适用于全局composer安装。您可能需要根据您的设置将
composer
替换为php composer.phar
(或类似)。
之后您可以创建项目
composer create-project openfed/openfed-project:~12.2.0 MYPROJECT
更新
最好是下载最新版本,并用文件替换您项目。如果您在composer.json中定义了自定义模块,您需要将其复制到新的composer.json文件中。您可以删除现有的composer.libraries.json,因为它已从本项目删除。
从Openfed 8.x-10.0开始,有一个composer脚本(实验性),您可以通过运行它来使本地项目部分更新。要更新您的项目,您可以
- 备份您的网站
- 运行
composer run-script project-update
- 手动更新composer.json(建议使用此存储库中的composer.json并将其调整以使用您的项目/补丁)
- 运行
composer update
您的项目现在应该已更新。
要求新的模块
使用composer require ...
,您可以下载新的依赖项到您的安装。
cd MYPROJECT
composer require drupal/devel:~1.0
使用composer create-project
命令将所有文件的所有权传递给创建的项目。您应该创建一个新的git存储库,并将所有由.gitignore文件排除的文件提交。
使用补丁
存在一个composer.patches.json文件,您可以使用它来定义项目所需的所有补丁。由于szeidler/composer-patches-cli库,您可以使用命令行管理补丁。以下是一些命令,更多详细信息请参阅https://github.com/szeidler/composer-patches-cli。
补丁添加
composer patch-add <package> <description> <url>
示例
composer patch-add drupal/core "SA-CORE-2018-002" "https://cgit.drupalcode.org/drupal/rawdiff/?h=8.5.x&id=5ac8738fa69df34a0635f0907d661b509ff9a28f"
您可以省略参数以进入交互模式。
补丁删除
composer patch-remove <package> <description>
示例
composer patch-remove drupal/core "SA-CORE-2018-002"
您可以省略参数以进入交互模式。
补丁列表
composer patch-list <package>
如果省略了包参数,则命令将返回所有定义的补丁。
故障排除
内存限制错误
在执行 "composer install" 时,您可能会遇到一些内存限制问题。这是由于 composer 依赖解析器导致的,因为我们有一个很长的依赖列表。为了绕过这个问题,您有3种选择
选项1
临时增加内存限制,方法请参考https://getcomposer.org.cn/doc/articles/troubleshooting.md#memory-limit-errors
选项2
如果您是第一次创建项目,请使用 "composer create-project" 命令推荐的安装过程。
选项3
运行 "composer update" 两次。第一次运行将会抛出相同的错误,但第二次尝试将会成功执行。