You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Jordi Boggiano e0edd882c5 Add --self flag to composer show to see the root package info 12 years ago
bin Boost memory_limit at runtime if permitted 12 years ago
doc Update docs about operators 12 years ago
res Add Files Autoloading key. This is a necessary feature to allow purely or partly functional libraries to be "autoloadable" by composer by calling require_once on every file in the "autoload"."files" list. 12 years ago
src Add --self flag to composer show to see the root package info 12 years ago
tests Revert previous change, use GIT_ASKPASS env var instead 12 years ago
.gitignore * ignore vagrant related 12 years ago
.travis.yml Quiet composer install 12 years ago
CHANGELOG.md Document addition of files autoloading in CHANGELOG 12 years ago
LICENSE Fix author/copyright 13 years ago
PORTING_INFO Import initial partial port of the libzypp satsolver. 13 years ago
README.md Typo fixes 12 years ago
composer.json Add minimum-stability to target the Symfony betas 12 years ago
composer.lock Fix lock file 12 years ago
phpunit.xml.dist Add slow tests to slow group, excluded by default except for travis 12 years ago

README.md

Composer - Package Management for PHP

Composer is a package manager tracking local dependencies of your projects and libraries.

See http://getcomposer.org/ for more information and documentation.

Build Status

Installation / Usage

  1. Download the composer.phar executable or use the installer.

    $ curl -s http://getcomposer.org/installer | php
    
  2. Create a composer.json defining your dependencies. Note that this example is a short version for applications that are not meant to be published as packages themselves. To create libraries/packages please read the guidelines.

    {
        "require": {
            "monolog/monolog": ">=1.0.0"
        }
    }
    
  3. Run Composer: php composer.phar install

  4. Browse for more packages on Packagist.

Installation from Source

To run tests, or develop Composer itself, you must use the sources and not the phar file as described above.

  1. Run git clone https://github.com/composer/composer.git
  2. Download the composer.phar executable
  3. Run Composer to get the dependencies: cd composer && php ../composer.phar install

You can now run Composer by executing the bin/composer script: php /path/to/composer/bin/composer

Global installation of Composer (manual)

Since Composer works with the current working directory it is possible to install it in a system wide way.

  1. Change into a directory in your path like cd /usr/local/bin
  2. Get Composer curl -s http://getcomposer.org/installer | php
  3. Make the phar executable chmod a+x composer.phar
  4. Change into a project directory cd /path/to/my/project
  5. Use Composer as you normally would composer.phar install
  6. Optionally you can rename the composer.phar to composer to make it easier

Global installation of Composer (via homebrew)

Composer is part of the homebrew-php project.

  1. Tap the homebrew-php repository into your brew installation if you haven't done yet: brew tap josegonzalez/homebrew-php
  2. Run brew install josegonzalez/php/composer.
  3. Use Composer with the composer command.

Updating Composer

Running php composer.phar self-update or equivalent will update a phar install with the latest version.

Contributing

All code contributions - including those of people having commit access - must go through a pull request and approved by a core developer before being merged. This is to ensure proper review of all the code.

Fork the project, create a feature branch, and send us a pull request.

To ensure a consistent code base, you should make sure the code follows the Coding Standards which we borrowed from Symfony.

If you would like to help take a look at the list of issues.

Community

The developer mailing list is on google groups IRC channels are available for discussion as well, on irc.freenode.org #composer for users and #composer-dev for development.

Requirements

PHP 5.3+

Authors

Nils Adermann - naderman@naderman.de - http://twitter.com/naderman - http://www.naderman.de
Jordi Boggiano - j.boggiano@seld.be - http://twitter.com/seldaek - http://seld.be

See also the list of contributors who participated in this project.

License

Composer is licensed under the MIT License - see the LICENSE file for details

Acknowledgments

This project's Solver started out as a PHP port of openSUSE's Libzypp satsolver.