Au moment de la rédaction de cet article en 2013, c'était une façon de le faire. Composer a ajouté un support pour de meilleures façons: voir la réponse de @igorw
AVEZ-VOUS UN REPOSITORY?
Git, Mercurial et SVN sont pris en charge par Composer.
AVEZ-VOUS UN ACCÈS EN ÉCRIT AU REPOSITORY?
Oui?
LE REPOSITORY A-T-IL UN composer.json
FICHIER
Si vous avez un référentiel dans lequel vous pouvez écrire: Ajoutez un composer.json
fichier, ou corrigez l'existant, et N'utilisez PAS la solution ci-dessous.
Aller à @igorw de » réponse
N'UTILISEZ CECI QUE SI VOUS N'AVEZ PAS DE DÉPÔT
OU SI LE DÉPOSITAIRE N'A PAS composer.json
D' UN ET VOUS NE POUVEZ PAS L'AJOUTER
Cela remplacera tout ce que Composer peut lire à partir du référentiel d'origine composer.json
, y compris les dépendances du package et le chargement automatique.
L'utilisation du package
type vous transférera le fardeau de tout définir correctement. Le moyen le plus simple est d'avoir un composer.json
fichier dans le référentiel et de l'utiliser simplement.
Cette solution n'est vraiment que pour les rares cas où vous avez un téléchargement ZIP abandonné que vous ne pouvez pas modifier, ou un référentiel que vous ne pouvez que lire, mais il n'est plus maintenu.
"repositories": [
{
"type":"package",
"package": {
"name": "l3pp4rd/doctrine-extensions",
"version":"master",
"source": {
"url": "https://github.com/l3pp4rd/DoctrineExtensions.git",
"type": "git",
"reference":"master"
}
}
}
],
"require": {
"l3pp4rd/doctrine-extensions": "master"
}
composer.json
, utilisez donc un repo vcs. Votre exemple interrompt également le chargement automatique et ignore le fichierbranch-alias
.autoload
champ, il ne sera pas inclus. Fondamentalement, vous devez copier-coller toutes les informations decomposer.json
la définition du dépôt. Le référentiel VCS récupère ces informations directement à partir de VCS. Les avantages debranch-alias
sont expliqués dans le document sur les alias et dans un article de blog que j'ai écrit .