Как установить пакет bower с помощью частного сервера git (SSH)?
EDIT:этот парень делает то же самое с успехом, не могу понять, почему это не работает для меня.
Я только что установил git и настройки разрешений / SSH аутентификации с открытым / закрытым ключом (Centos 6.5). Я могу тянуть / толкать без проблем, используя т. е.:
git clone git@code.organization.com:projects/boilerplate-template
имя пользователя git, код помещен в /home/git/projects, репозиторий создан с git --init --shared boilerplate-template.
как я могу требовать boilerplate-template с беседкой в еще один проект?
я пробовал со следующим bower.JSON-файл без везения:
{
"name": "my/newproject",
"dependencies": {
"boilerplate-template": "git://code.organization.com:projects/boilerplate-template"
}
}
ECMDERR: не удалось выполнить "git ls-remote --tags --heads в Git://код.организации.в COM:проекты/шаблон-шаблон, код выхода Сто двадцать восемь не удается выполнить поиск code.organization.com (проект порта)...
к сожалению, это не удается, потому что :project - это не порт, а путь. Я также пробовал с ssh:// вместо git://:
ENOTFOUND: пакет ssh:/ / code.organization.com: projects / boilerplate-шаблон не найден.
8 ответов:
ОК, нашел решение здесь: использование Bower в качестве инструмента управления пакетами для внутренних, частных библиотек. Просто удалите
git://илиssh://и добавить.gitсуффикс:"git@code.organization.com:projects/boilerplate-template.git#~1"
кроме того, если вы используете Github и Bower для частного РЕПО, вы можете создать
.netrcфайл, если вам нужно запуститьbower installна удаленном сервере.например, у вас есть капля DO и вам нужно проверить репозиторий git, который использует ключи ssh, но должен работать
bower installС некоторыми deps, которые являются частными. Если вы добавите.netrcфайл на удаленной машине вы будете хорошо идти для развертывания / сборки.// .netrc where someToken is generated in Github under Personal access token machine github.com login userName password someToken
у меня были проблемы с получением
bower loginработает, поэтому я пошел с этим подходом.<TOKEN>создана здесь. Он работает для частных репозиториев, размещенных на Github."dependencies": { "your-package": "https://<TOKEN>:x-oauth-basic@github.com/Account/Repository.git" }
у TeamCity была эта проблема для нас при попытке загрузить частное РЕПО из GitHub. В случае, если это поможет кому-либо, мы решили его с помощью SSH и предоставления GitHub Personal Access Token под управлением
bower loginдоbower install:пример зависимости в bower.json:
"repository": "git@github.com:Account/Repository.git"команды для запуска в сборочный скрипт:
bower login -t {GitHub Personal Access Token} bower install
перейти к https://github.com/settings/tokens, сгенерируйте свой токен
bower login -t {your token} bower install
вы можете столкнуться с этой проблемой, если вы также клонируете из частного РЕПО. Принятый ответ верен, однако я хочу прояснить эту проблему:
если у вас есть доступ GitHub SSH к вашей машине, перейдите в репозиторий git и скопируйте ссылку "клон с SSH", а затем поместите ее в bower.файл json.
если у вас есть https(login authentication) настройки для github на вашем компьютере, скопируйте ссылку "клонировать с https", а затем поместите его внутри беседка.файл json. репозиторий
пример: SSH ссылка: git@github.com:Account/Repository.git HTTPS ссылка:https://github.com/Account/Repository.git
Бауэр.JSON-файл:
"dependencies": { "repository": "paste SSH/HTTPS clone line here" }
как уже упоминалось, установка местоположения пакета:
"git@code.organization.com:projects/yourproject.git"позволит bower тянуть из репозитория git.
если вы получаете проблему SSH на Windows, вы можете выполнить следующие действия:
- скачать шпатлевку инструменты
- используйте PuttyGen для создания нового ключа.
- сохраните закрытый ключ для ваших пользователей .ssh папка как
anything.ppk- скопируйте текст, начиная
ssh-rsaв putty gen к буфер обмена- перейти к github и
Settings -> SSH keys -> Add SSH keyпридание вашему ключу названия и вставка текста из PuttyGen в ключевую часть- добавить переменную окружения с именем
GIT_SSHсо значением, являющимся путем к замазке инструмента ПЛИНК.exe напримерC:\Program Files\Putty\PLINK.exe- запустить инструмент шпатлевка "конкурс.exe" и добавить код
anything.ppkkey to pageant (вы можете добавить ярлык в папку автозагрузки с помощьюC:\pathtopageant\pageant.exe C:\Users\myuser\.ssh\anything.ppkдля автоматического добавления ключа в pageant при запуске)- открыть
putty.exeсам, введите имя хоста GitHub enteprise (code.organization.com в приведенном выше примере), или "github.com" в текстовом поле Имя хоста нажмите кнопку "Открыть". Вероятно, вам будет предложено доверять хосту, нажмите Да, чтобы добавить его в свой файл known_hosts, поскольку bower не может сделать это при первом запуске и просто повесил бы- в конце концов
bower install!
Я закончил следующим, хотя работал только для частных репозиториев github.
создать маркер доступа Github здесь и установить его в качестве переменной среды
GITHUB_TOKENопределить стенографический преобразователь в
.bowerrc:"shorthand_resolver": "https://${GITHUB_TOKEN}@github.com/{{owner}}/{{package}}.git"теперь я могу добавить свою зависимость как
bower install me/my-private-packageили список его вbower.json:"dependencies": { "my-private-package": "me/my-private-package" }работает также для Heroku строит.