tldr/pages/common/composer.md

37 lines
955 B
Markdown
Raw Normal View History

2017-04-20 12:27:57 +01:00
# composer
> A package-based dependency manager for PHP projects.
> More information: <https://getcomposer.org/>.
2017-04-20 12:27:57 +01:00
- Interactively create a `composer.json` file:
`composer init`
- Add a package as a dependency for this project, adding an entry to `composer.json`:
2017-04-20 12:27:57 +01:00
`composer require {{user/package}}`
2017-04-20 12:27:57 +01:00
- Install all the dependencies in this project's `composer.json` and create `composer.lock`:
2017-04-20 12:27:57 +01:00
`composer install`
- Uninstall a package from this project, removing it as a dependency from `composer.json` and `composer.lock`:
2017-04-20 12:27:57 +01:00
`composer remove {{user/package}}`
2017-04-20 12:27:57 +01:00
- Update all the dependencies in this project's `composer.json` and note new versions in `composer.lock` file:
2017-04-20 12:27:57 +01:00
`composer update`
- Update only `composer.lock` after updating `composer.json` manually:
`composer update --lock`
- Learn more about why a dependency can't be installed:
`composer why-not {{user/package}}`
- Update composer to its latest version:
2017-04-20 12:27:57 +01:00
`composer self-update`