Supposons que j'ai créé un correctif dans un module de nœud et que je souhaite utiliser ma version corrigée, bien sûr, jusqu'à ce que le correctif soit fusionné et publié.
Comment pourrais-je référencer ma version corrigée dans la dependencies
de mon package.json
?
Depuis le npm docs :
git://github.com/<user>/<project>.git#<branch>
git://github.com/<user>/<project>.git#feature\/<branch>
À partir de la version 1.1.65 de NPM, vous pouvez le faire:
<user>/<project>#<branch>
le commentaire de @ dantheta:
À partir de npm 1.1.65, l'URL Github peut être un utilisateur/projet plus concis. npmjs.org/doc/files/package.json.html Vous pouvez attacher la branche comme une branche utilisateur/projet #
Alors
"babel-eslint": "babel/babel-eslint",
Ou pour le tag v1.12.0 sur jscs:
"jscs": "jscs-dev/node-jscs#v1.12.0",
Notez que si vous utilisez npm --save, vous obtiendrez le plus long git
De https://docs.npmjs.com/files/package.json#git-urls-as-dependencies
URL Git en tant que dépendances
Les urls Git peuvent être de la forme:
git: //github.com/user/project.git#commit-ish git + ssh: // utilisateur @ nomhôte: projet.git # commit-ish git + ssh: //utilisateur@hostname/project.git#commit- ish git + http: //user@hostname/project/blah.git#commit-ish git + https: //user@hostname/project/blah.git#commit-ish =
Commit-ish peut être n’importe quelle balise, sha ou branche pouvant être fournie en tant qu’argument pour git checkout. Le défaut est maître.
URL GitHub
Depuis la version 1.1.65, vous pouvez faire référence aux URL de GitHub simplement "foo": "user/foo-project". Tout comme pour les URL git, un suffixe de validation peut être inclus. Par exemple:
{"nom": "foo",
"version": "0.0.0",
"dépendances": {"express": "visionmedia/express", "mocha": "visionmedia/mocha # 4727d357ea"}}
Si vous souhaitez utiliser la branche devel
ou feature
, ou si vous n'avez pas publié un certain paquet dans le registre NPM, ou vous ne pouvez pas, car il s'agit d'un module privé, vous pouvez pointer sur un git://
URI au lieu d'un numéro de version dans votre package.json
:
"dependencies": {
"public": "git://github.com/user/repo.git#ref",
"private": "git+ssh://[email protected]:user/repo.git#ref"
}
La partie #ref
est facultative et peut être une branche (comme master
), une balise (comme 0.0.1
) ou un identifiant de validation partielle ou complète.
Sur la dernière version de NPM, vous pouvez simplement faire:
npm install gitAuthor/gitRepo#tag
Si le référentiel est un package NPM valide, il sera automatiquement associé à package.json, comme suit:
{ "NPMPackageName": "gitAuthor/gitRepo#tag" }
Si vous pouviez ajouter ceci à la réponse de @justingordon, il n'est pas nécessaire de créer un alias manuel maintenant!