Установка Bower с использованием только https?

Я пытаюсь настроить Bower на сервере сборки в нашем центре обработки данных, но порт git не отображается на брандмауэре центра обработки данных. Я могу использовать клиент командной строки git для клонирования через https://[repo], но не git://[repo].

Есть ли переключатель или предпочтение, которое даст указание колокольщику выполнить клон git, используя https, а не протокол git?

Я посмотрел на источник и подумал об изменении кода разрешения, чтобы заменить git:// на https://, но я решил, что задаю вопрос, прежде чем идти на эти длины.

Ответ 1

Вы можете сделать git замену протокола для вас. Просто запустите:

git config --global url."https://".insteadOf git://

Ответ 2

Основываясь на ответе от @Sindre, я написал небольшую вспомогательную функцию в BASH, которая живет в моем файле ~/.bashrc. Назовите его так же, как и grunt, но теперь он называется nngrunt. Наслаждайтесь!

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/info/15669091/bower-install-using-only-https
    git config --global url."https://".insteadOf git://

    # Run grunt w/ any supplied args
    grunt "[email protected]"

    # 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
}