nrel / dam-project
基于Dam Lightning子配置文件分发的Drupal 8网站项目模板。
Requires
- cweagans/composer-patches: ^1.6.0
- drupal-composer/drupal-scaffold: ^2.0.0
- nrel/dam: ^1.0.44
Requires (Dev)
- behat/behat: ^3.0
- behat/mink: ~1.7
- behat/mink-goutte-driver: ~1.2
- composer/composer: ^1.3
- drupal/coder: 8.*
- drupal/console: ^1.0
- drupal/devel: ~1.0
- drupal/drupal-extension: ~3.3.0
- drupal/stage_file_proxy: ~1.0@alpha
- drush/config-extra: ~1.0
- drush/drush: 8.1.11
- jcalderonzumba/gastonjs: ~1.0.2
- mikey179/vfsstream: ~1.2
- phpunit/phpunit: ~4.8
- se/selenium-server-standalone: ^2.53
- symfony/css-selector: ~2.8
README
这是一个基于Composer的安装程序,用于基于Dam子配置文件和基于Lightning Drupal分发的安装程序。欢迎来到未来!
开始使用
$ composer create-project NREL/dam-project MY_PROJECT
Composer将创建一个名为MY_PROJECT的新目录,其中包含一个包含完整Lightning代码库的docroot
目录。然后您可以像安装任何其他Drupal网站一样安装它。
维护
drush make
、drush pm-download
、drush pm-update
及其类似工具是维护代码库的旧式方法。忘记它们吧。您现在处于Composer领域!
以下表格可作为您的指南
神奇之处在于,与Drush不同,Composer是一个依赖关系管理器。如果模块foo version: 1.0.0
依赖于baz version: 3.2.0
,Composer将不会允许您将baz更新到3.3.0
(或者将其降级到3.1.0
)。Drush没有依赖关系管理的概念。如果您曾经因为这种依赖关系问题意外破坏了网站,您可能已经意识到Composer的价值。
但为了明确:使用像Drush或Drupal Console这样的站点管理工具仍然非常有帮助。如数据库更新(drush updatedb
)等任务仍然属于此类实用程序的范围。此安装程序将在bin
目录中安装Drush(本地于项目)。
指定版本
您可以使用以下命令行指定版本
$ composer require drupal/<modulename>:<version>
例如
$ composer require drupal/ctools:3.0.0-alpha26
$ composer require drupal/token:1.x-dev
在这些示例中,composer版本3.0.0-alpha26映射到drupal.org的8.x-3.0-alpha26版本,1.x-dev映射到drupal.org的8.x-1.x分支。
如果您指定了一个分支,例如1.x,您必须在版本末尾添加-dev。
Composer仅负责维护代码库.
源代码控制
如果您查看我们提供的.gitignore
文件,您会看到某些目录被排除在源代码控制之外,包括所有包含贡献项目目录的目录。如果您是刚从Drush星球来的人,这可能会让您有些不安,但在像这样一个基于Composer的项目中,您绝对不应该将已安装的依赖项提交到源代码控制。
当您设置项目时,Composer将创建一个名为composer.lock
的文件,其中列出了安装了哪些依赖项以及它们的版本。将composer.lock
提交到源代码控制!然后,当您的同事想要启动他们自己的项目副本时,他们只需运行composer install
即可,这将安装composer.lock
中所有正确版本的依赖项。