J'essaie de configurer Bower sur un serveur de génération situé dans le centre de données de notre organisation, mais le port de git
ne semble pas être ouvert sur le pare-feu du centre de données. Je peux utiliser le client en ligne de commande git pour cloner via https://[repo]
, mais pas git://[repo]
.
Existe-t-il un commutateur ou une préférence permettant à bower d’effectuer le clonage git en utilisant https
plutôt que le protocole git
?
J'ai regardé la source et envisagé de modifier le code de résolution pour remplacer git://
par https://
, mais je me suis dit que je demanderais avant de passer à ces longueurs.
Vous pouvez faire en sorte que git remplace le protocole pour vous. Il suffit de courir:
git config --global url."https://".insteadOf git://
utiliser le protocole HTTPS au lieu de Git.
En me basant sur la réponse de @Sindre, j’ai écrit une petite fonction d’aide dans BASH qui réside dans mon fichier ~/.bashrc
. Appelez-le comme vous le feriez grunt
, sauf que maintenant il s'appelle nngrunt
. Prendre plaisir!
function nngrunt
{
# Add a section to the global gitconfig file ~/.gitconfig that tells git to
# go over http instead of the git protocol, otherwise bower has fits...
# See http://stackoverflow.com/questions/15669091/bower-install-using-only-https
git config --global url."https://".insteadOf git://
# Run grunt w/ any supplied args
grunt "$@"
# Now cleanup the section we added to the git config file
# Of course we have our own extra cleanup to do via sed since the unset command
# leaves the section around
# See http://git.661346.n2.nabble.com/git-config-unset-does-not-remove-section-td7569639.html
git config --global --unset url."https://".insteadOf
sed -i 's/\[url "https:\/\/"\]//' ~/.gitconfig
sed -i '/^$/d' ~/.gitconfig
}
Travaillé pour moi git config --global url."git://".insteadOf https://