az-digital/az-quickstart-scaffolding

为Composer设计的亚利桑那快速启动脚手架


README

备注

如果您计划将此网站推送到Pantheon,应使用Pantheon上游仓库作为您的脚手架仓库,该仓库有单独的说明。

Security workflow

选择适合您的快速启动项目的正确分支

在亚利桑那快速启动脚手架项目中,不同的分支用于不同的目的。以下是了解您应该选择哪个分支的指南

主分支(《dev-main》)

  • 目的:主分支包含所有最新功能和更改。它代表最前沿的开发,可能比特定版本分支不稳定。您可以使用它与dev-main或最新的未发布版本的别名(例如,2.8.x)。
  • 何时使用:如果您想访问最新的功能,并且愿意使用可能未经充分测试的代码,请选择此分支。理想用于开发、实验或测试未发布的功能。

发布分支(例如,2.5.x2.6.x2.7.x

  • 目的:发布分支,格式为2.x.x-dev,为项目的特定版本创建,被认为是稳定且适用于生产的。它们包含适合实时环境的经过充分测试的功能。
  • 何时使用:如果您需要为生产使用项目的稳定版本,有特定的环境约束或希望与特定的第三方模块或特定版本保持兼容性,请选择最新的两个支持发布分支之一(例如,2.7.x-dev2.6.x-dev)。
  • 注意:仅支持最新的两个发布分支。使用这些分支确保您接收更新、安全补丁和支持,与您的系统需求保持一致,避免潜在冲突,实现稳健可靠的实现。
  • 支持发布分支中的版本约束:本存储库中的每个支持发布分支在composer.json中指定az_quickstart的版本约束。此约束确保发布分支将与与兼容的次要版本分支相对应的兼容Quickstart版本一起工作,同时提供灵活性,同时保持与预期版本的同步。

功能或问题分支

本存储库中的功能或问题分支通常创建来更新脚手架以与az-digital/az_quickstart的特定分支一起工作。创建此类分支时,通常会将此存储库的composer.json引用对于az-digital/az_quickstart固定到特定的问题/功能分支,该分支的更改旨在与之一起工作。这确保分支的更改与Quickstart项目的特定状态完全一致。

这些分支适用于隔离开发、更改测试,或为与Quickstart项目发展相对应的脚手架添加新功能。

备注

  • 如果您正在为az-digital/az_quickstart开发功能,请使用提供的构建工具(DDev或Lando),而不是直接运行composer create-project
  • 这些分支不如主分支或发布分支稳定,因此请将它们用于开发、实验或测试,而不是生产环境。
  • 该存储库中功能分支或问题分支的使用与az-digital/az_quickstart项目的开发紧密相关,并且应与相应的Quickstart分支一起使用。

使用composer create-project命令

使用Composer的create-project命令,您可以快速使用亚利桑那快速启动脚手架搭建新项目。每个az-quickstart-scaffolding分支都与一个az_quickstart分支相对应,确保脚手架与核心项目之间的兼容性和一致性。

以下是一些使用此命令的不同分支指定示例

如果您使用以下任何命令,请将my_project_name调整为您希望的项目目录名称。

  • 使用主分支(main)与开发依赖项:

    composer create-project az-digital/az-quickstart-scaffolding:dev-main my_project_name --no-interaction
    
  • 使用最新未发布版本别名(2.8.x

    composer create-project az-digital/az-quickstart-scaffolding:2.8.x-dev my_project_name --no-interaction --no-dev
  • 使用特定发布分支(例如,2.7.x

    composer create-project az-digital/az-quickstart-scaffolding:2.7.x-dev my_project_name --no-interaction --no-dev
  • 使用问题或功能分支(例如,issue-45

    composer create-project az-digital/az-quickstart-scaffolding:dev-issue/45 my_project_name --no-interaction

Lando中的迁移设置

亚利桑那数字已添加一个迁移到Quickstart 2的README

更新Quickstart

目前,亚利桑那数字支持亚利桑那快速启动的两个最新次要版本

  • composer install将安装更新并拉入开发依赖项,如果存在,还将应用补丁。
  • composer install --no-dev将安装更新,将移除开发依赖项,如果存在,还将应用补丁。
  • composer update应根据您composer.json文件中的版本约束获取最新版本,如果存在,还将应用补丁。
  • composer require "az-digital/az_quickstart:2.7.0" --update-no-dev将锁定到Quickstart的特定版本,而不包含开发依赖项。您可以更新您的网站,每次想要更新时增加版本号,或使用版本约束与composer update --no-dev一起使用,仅更新到标记版本。

一旦您的网站代码库更新,运行数据库更新和分发更新就很重要。

重要在运行数据库更新或导入分发更新之前,始终创建备份。

可以通过命令行进行数据库更新

drush updatedb

重要始终确保您的网站设置为正确的导入分发更新的策略。对于Quickstart,建议在导入分发更新时使用合并策略,这可以通过drush或管理员UI设置。

建议您熟悉配置分发模块的功能,以充分利用Quickstart。

drush -y state:set config_sync.update_mode 1 --input-format=integer

可以通过命令行导入分发更新

drush config-distro-update

启动您的网站

当您准备启动网站时,可以使用composer移除Quickstart和此脚手架存储库中包含的开发依赖项,但首先您需要确保开发模块在Drupal中未启用。

示例

drush pm:uninstall -y devel migrate_devel config_inspector

一旦卸载,开发依赖项可以安全地使用composer移除。

composer remove --dev