Skip to content

Commit d6c7468

Browse files
committed
change readme
1 parent 1a17d3e commit d6c7468

1 file changed

Lines changed: 1 addition & 131 deletions

File tree

www/README.md

Lines changed: 1 addition & 131 deletions
Original file line numberDiff line numberDiff line change
@@ -1,131 +1 @@
1-
# Composer template for Drupal projects
2-
3-
[![Build Status](https://travis-ci.org/drupal-composer/drupal-project.svg?branch=8.x)](https://travis-ci.org/drupal-composer/drupal-project)
4-
5-
This project template should provide a kickstart for managing your site
6-
dependencies with [Composer](https://getcomposer.org/).
7-
8-
If you want to know how to use it as replacement for
9-
[Drush Make](https://github.com/drush-ops/drush/blob/master/docs/make.md) visit
10-
the [Documentation on drupal.org](https://www.drupal.org/node/2471553).
11-
12-
## Usage
13-
14-
First you need to [install composer](https://getcomposer.org/doc/00-intro.md#installation-linux-unix-osx).
15-
16-
> Note: The instructions below refer to the [global composer installation](https://getcomposer.org/doc/00-intro.md#globally).
17-
You might need to replace `composer` with `php composer.phar` (or similar)
18-
for your setup.
19-
20-
After that you can create the project:
21-
22-
```
23-
composer create-project drupal-composer/drupal-project:8.x-dev some-dir --stability dev --no-interaction
24-
```
25-
26-
With `composer require ...` you can download new dependencies to your
27-
installation.
28-
29-
```
30-
cd some-dir
31-
composer require drupal/devel:~1.0
32-
```
33-
34-
The `composer create-project` command passes ownership of all files to the
35-
project that is created. You should create a new git repository, and commit
36-
all files not excluded by the .gitignore file.
37-
38-
## What does the template do?
39-
40-
When installing the given `composer.json` some tasks are taken care of:
41-
42-
* Drupal will be installed in the `web`-directory.
43-
* Autoloader is implemented to use the generated composer autoloader in `vendor/autoload.php`,
44-
instead of the one provided by Drupal (`web/vendor/autoload.php`).
45-
* Modules (packages of type `drupal-module`) will be placed in `web/modules/contrib/`
46-
* Theme (packages of type `drupal-theme`) will be placed in `web/themes/contrib/`
47-
* Profiles (packages of type `drupal-profile`) will be placed in `web/profiles/contrib/`
48-
* Creates default writable versions of `settings.php` and `services.yml`.
49-
* Creates `sites/default/files`-directory.
50-
* Latest version of drush is installed locally for use at `vendor/bin/drush`.
51-
* Latest version of DrupalConsole is installed locally for use at `vendor/bin/drupal`.
52-
53-
## Updating Drupal Core
54-
55-
This project will attempt to keep all of your Drupal Core files up-to-date; the
56-
project [drupal-composer/drupal-scaffold](https://github.com/drupal-composer/drupal-scaffold)
57-
is used to ensure that your scaffold files are updated every time drupal/core is
58-
updated. If you customize any of the "scaffolding" files (commonly .htaccess),
59-
you may need to merge conflicts if any of your modfied files are updated in a
60-
new release of Drupal core.
61-
62-
Follow the steps below to update your core files.
63-
64-
1. Run `composer update drupal/core --with-dependencies` to update Drupal Core and its dependencies.
65-
1. Run `git diff` to determine if any of the scaffolding files have changed.
66-
Review the files for any changes and restore any customizations to
67-
`.htaccess` or `robots.txt`.
68-
1. Commit everything all together in a single commit, so `web` will remain in
69-
sync with the `core` when checking out branches or running `git bisect`.
70-
1. In the event that there are non-trivial conflicts in step 2, you may wish
71-
to perform these steps on a branch, and use `git merge` to combine the
72-
updated core files with your customized files. This facilitates the use
73-
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;
74-
keeping all of your modifications at the beginning or end of the file is a
75-
good strategy to keep merges easy.
76-
77-
## Generate composer.json from existing project
78-
79-
With using [the "Composer Generate" drush extension](https://www.drupal.org/project/composer_generate)
80-
you can now generate a basic `composer.json` file from an existing project. Note
81-
that the generated `composer.json` might differ from this project's file.
82-
83-
84-
## FAQ
85-
86-
### Should I commit the contrib modules I download?
87-
88-
Composer recommends **no**. They provide [argumentation against but also
89-
workrounds if a project decides to do it anyway](https://getcomposer.org/doc/faqs/should-i-commit-the-dependencies-in-my-vendor-directory.md).
90-
91-
### Should I commit the scaffolding files?
92-
93-
The [drupal-scaffold](https://github.com/drupal-composer/drupal-scaffold) plugin can download the scaffold files (like
94-
index.php, update.php, …) to the web/ directory of your project. If you have not customized those files you could choose
95-
to not check them into your version control system (e.g. git). If that is the case for your project it might be
96-
convenient to automatically run the drupal-scaffold plugin after every install or update of your project. You can
97-
achieve that by registering `@drupal-scaffold` as post-install and post-update command in your composer.json:
98-
99-
```json
100-
"scripts": {
101-
"drupal-scaffold": "DrupalComposer\\DrupalScaffold\\Plugin::scaffold",
102-
"post-install-cmd": [
103-
"@drupal-scaffold",
104-
"..."
105-
],
106-
"post-update-cmd": [
107-
"@drupal-scaffold",
108-
"..."
109-
]
110-
},
111-
```
112-
### How can I apply patches to downloaded modules?
113-
114-
If you need to apply patches (depending on the project being modified, a pull
115-
request is often a better solution), you can do so with the
116-
[composer-patches](https://github.com/cweagans/composer-patches) plugin.
117-
118-
To add a patch to drupal module foobar insert the patches section in the extra
119-
section of composer.json:
120-
```json
121-
"extra": {
122-
"patches": {
123-
"drupal/foobar": {
124-
"Patch description": "URL to patch"
125-
}
126-
}
127-
}
128-
```
129-
### How do I switch from packagist.drupal-composer.org to packages.drupal.org?
130-
131-
Follow the instructions in the [documentation on drupal.org](https://www.drupal.org/docs/develop/using-composer/using-packagesdrupalorg).
1+
# Folder for drupal

0 commit comments

Comments
 (0)