voici mon composer.json, je veux utiliser le projet fork of lessphp de Nodge sur Github
"repositories": [{
"type": "package",
"package": {
"version": "dev-master",
"name": "nodge/lessphp",
"source": {
"url": "https://github.com/Nodge/lessphp.git",
"type": "git",
"reference": "master"
},
"autoload": {
"classmap": ["lessc.inc.php"]
}
}
}],
"require": {
"php": ">=5.3.3",
"nodge/lessphp": "dev-master"
},
Mais j'ai cette erreur lorsque je fais la mise à jour:
nodge / lessphp dev-master -> aucun package correspondant trouvé.
Je ne sais pas comment l'exiger correctement cette fourche ...
Aucune suggestion ?
la source
composer show jwade/purl -v
devrait vous dire pourquoi il a ignoré la version dev-master si c'est le cas.L'utilisation de VCS fonctionne:
Mais si j'ai besoin d'un module qui a ceci
composer.json
, cela ne fonctionne pas. Il installe le projet d'origine, pas la fourche.Exemple
Je devrais mentionner à nouveau le référentiel. Est-ce normal?
la source
Si vous ne parvenez pas à faire fonctionner la réponse @Neilime pour vous, assurez-vous que votre fork utilise une branche différente.
Par exemple, transmettez vos modifications à une branche de votre fork appelé
my-bugfix
, n'ajoutez pas dedev-
préfixe dans votre nom de branche mais dans votre composer.json, vous devez l'ajouter. Votre fichier compositeur ressemblera à ceci:la source
name
champ dans lecomposer.json
fichier de votre référentiel fourchu doit rester le même avec le propriétaire d'origine.J'ai essayé de nombreuses options, mais après avoir reçu ce message, j'ai vu la lumière et cela a fonctionné parfaitement.
Voici ce que vous devez faire:
1- Fork de référentiel
2- Créez une branche et apportez les modifications nécessaires.
3- Ajoutez le libellé du référentiel à votre composer.json
4- Dans la ligne de commande de votre projet, vous avez besoin de votre fork comme ceci:
Et Voilá !!
Votre version de fourche fonctionne
la source
Selon la documentation de Composer http://getcomposer.org/doc/05-repositories.md#vcs , il suffit de spécifier le référentiel d'origine (pas le fork) dans le
require
("nodge / lessphp" dans votre cas). Composer installera alors VOTRE fork (regardez le code dans les vendeurs)la source
Nous sommes donc en 2019 et la plupart des réponses ici sont déjà correctes.
Cependant, si vous vous trouvez dans une situation où vous avez besoin d'une branche particulière de votre fork (que vous avez créée), demandez à composer d'abord la liste des versions / balises disponibles. Cela m'a fait gagner beaucoup de temps.
Un exemple complet avec
spatie/laravel-backup
package.Tout d'abord, ajoutez la
repositories
clé à composer.json. Avec l'url de votre fourchetteObtenir les versions / tags disponibles
Choisissez la version que vous voulez
versions
dans la sortie du terminal, puis exigez cette versionla source
J'ajoute généralement un nœud "dist" à la définition du package. Je n'ai jamais eu de problème à l'utiliser de cette façon.
Je ne me souviens pas d'où j'ai tiré cette astuce, cependant, pour plus d'explications.
la source