composer initcomposer create-project vendor/package:versioncomposer install --no-dev -a (–classmap-authoritative)composer require vendor/package:versioncomposer require --dev vendor/package:versionExample version constraints @dev, ^1.0, ~1.1.0
composer remove vendor/packagecomposer update --dry-runcomposer update --lockcomposer update "vendor/package"composer update "vendor/*" --with-dependenciescomposer update "vendor/prefix-*" --with-all-dependenciescomposer outdated -D -m --strict --locked--dev Require a dev package--dry-run Just show what composer would do--ignore-platform-reqs Ignores platform dependencies as PHP Version and extensions--with-dependencies Update also dependencies of packages in the argument list, except those which are root requirements.--with-all-dependencies Update also dependencies of packages in the argument list, including those which are root requirements.composer whycomposer fundcomposer config minimum-stability devcomposer config prefer-stable truecomposer showcomposer config gitlab-domains gitlab.my.orgcomposer config repositories.local '{"type": "path", "url": "packages/*", "options": {"reference": "none"}}'composer bumpWhat should work vs. what is currently installed.
The composer.json defines the packages you want to install and their version range that should work.
The composer.lock pins the current install packages, their version and all dependencies of the packages with their version (dependency tree).
ComposerVCSPackagePath* and ?.options.ssl.cafile, trust a ca certificate during the communication with the https repository