This commit is contained in:
Bachir Soussi Chiadmi 2019-01-28 22:07:49 +01:00
parent e26f388a6a
commit 3de0a8ba88
1 changed files with 24 additions and 20 deletions

View File

@ -1,3 +1,7 @@
# Materio Drupal 8
https://materio.com
# Composer template for Drupal projects
[![Build Status](https://travis-ci.org/drupal-composer/drupal-project.svg?branch=8.x)](https://travis-ci.org/drupal-composer/drupal-project)
@ -14,7 +18,7 @@ the [Documentation on drupal.org](https://www.drupal.org/node/2471553).
First you need to [install composer](https://getcomposer.org/doc/00-intro.md#installation-linux-unix-osx).
> Note: The instructions below refer to the [global composer installation](https://getcomposer.org/doc/00-intro.md#globally).
You might need to replace `composer` with `php composer.phar` (or similar)
You might need to replace `composer` with `php composer.phar` (or similar)
for your setup.
After that you can create the project:
@ -23,7 +27,7 @@ After that you can create the project:
composer create-project drupal-composer/drupal-project:8.x-dev some-dir --no-interaction
```
With `composer require ...` you can download new dependencies to your
With `composer require ...` you can download new dependencies to your
installation.
```
@ -31,8 +35,8 @@ cd some-dir
composer require drupal/devel:~1.0
```
The `composer create-project` command passes ownership of all files to the
project that is created. You should create a new git repository, and commit
The `composer create-project` command passes ownership of all files to the
project that is created. You should create a new git repository, and commit
all files not excluded by the .gitignore file.
## What does the template do?
@ -53,26 +57,26 @@ When installing the given `composer.json` some tasks are taken care of:
## Updating Drupal Core
This project will attempt to keep all of your Drupal Core files up-to-date; the
project [drupal-composer/drupal-scaffold](https://github.com/drupal-composer/drupal-scaffold)
is used to ensure that your scaffold files are updated every time drupal/core is
updated. If you customize any of the "scaffolding" files (commonly .htaccess),
you may need to merge conflicts if any of your modified files are updated in a
This project will attempt to keep all of your Drupal Core files up-to-date; the
project [drupal-composer/drupal-scaffold](https://github.com/drupal-composer/drupal-scaffold)
is used to ensure that your scaffold files are updated every time drupal/core is
updated. If you customize any of the "scaffolding" files (commonly .htaccess),
you may need to merge conflicts if any of your modified files are updated in a
new release of Drupal core.
Follow the steps below to update your core files.
1. Run `composer update drupal/core webflo/drupal-core-require-dev symfony/* --with-dependencies` to update Drupal Core and its dependencies.
1. Run `git diff` to determine if any of the scaffolding files have changed.
Review the files for any changes and restore any customizations to
1. Run `git diff` to determine if any of the scaffolding files have changed.
Review the files for any changes and restore any customizations to
`.htaccess` or `robots.txt`.
1. Commit everything all together in a single commit, so `web` will remain in
sync with the `core` when checking out branches or running `git bisect`.
1. In the event that there are non-trivial conflicts in step 2, you may wish
to perform these steps on a branch, and use `git merge` to combine the
updated core files with your customized files. This facilitates the use
of a [three-way merge tool such as kdiff3](http://www.gitshah.com/2010/12/how-to-setup-kdiff-as-diff-tool-for-git.html). This setup is not necessary if your changes are simple;
keeping all of your modifications at the beginning or end of the file is a
1. In the event that there are non-trivial conflicts in step 2, you may wish
to perform these steps on a branch, and use `git merge` to combine the
updated core files with your customized files. This facilitates the use
of a [three-way merge tool such as kdiff3](http://www.gitshah.com/2010/12/how-to-setup-kdiff-as-diff-tool-for-git.html). This setup is not necessary if your changes are simple;
keeping all of your modifications at the beginning or end of the file is a
good strategy to keep merges easy.
## Generate composer.json from existing project
@ -86,7 +90,7 @@ that the generated `composer.json` might differ from this project's file.
### Should I commit the contrib modules I download?
Composer recommends **no**. They provide [argumentation against but also
Composer recommends **no**. They provide [argumentation against but also
workrounds if a project decides to do it anyway](https://getcomposer.org/doc/faqs/should-i-commit-the-dependencies-in-my-vendor-directory.md).
### Should I commit the scaffolding files?
@ -111,11 +115,11 @@ achieve that by registering `@composer drupal:scaffold` as post-install and post
```
### How can I apply patches to downloaded modules?
If you need to apply patches (depending on the project being modified, a pull
request is often a better solution), you can do so with the
If you need to apply patches (depending on the project being modified, a pull
request is often a better solution), you can do so with the
[composer-patches](https://github.com/cweagans/composer-patches) plugin.
To add a patch to drupal module foobar insert the patches section in the extra
To add a patch to drupal module foobar insert the patches section in the extra
section of composer.json:
```json
"extra": {