Как установить пакет 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.ppk
key 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 строит.