Как установить пакет bower с помощью частного сервера git (SSH)?
EDIT: этот парень делает то же самое с успехом, не может понять, почему он не работает для меня.
Я только что установил git
и установил разрешения/SSH-аутентификацию с открытым/закрытым ключом (Centos 6.5). Я могу без проблем нажимать/нажимать, используя i.e.:
git clone [email protected]:projects/boilerplate-template
Имя пользователя git
, код размещен в /home/git/projects
, репозиторий создан с помощью git --init --shared boilerplate-template
.
Как я могу потребовать boilerplate-template
с Bower в другом проекте?
Я пробовал использовать следующий файл bower.json без везения:
{
"name": "my/newproject",
"dependencies": {
"boilerplate-template": "git://code.organization.com:projects/boilerplate-template"
}
}
ECMDERR: не удалось выполнить "git ls-remote --tags --heads git://code.organization.com: проекты/шаблон шаблона, код выхода 128 не удалось выполнить поиск code.organization.com(проект порта)...
К сожалению, это не так, потому что :project
не порт, а путь. Я также пытался использовать ssh://
вместо git://
:
ENOTFOUND: пакет ssh://code.organization.com: проекты/шаблон шаблона не найден.
Ответы
Ответ 1
Хорошо, нашел решение здесь: Использование Bower в качестве инструмента управления пакетами для внутренних, частных библиотек. Просто удалите git://
или ssh://
и добавьте суффикс .git
:
"[email protected]:projects/boilerplate-template.git#~1"
Ответ 2
Кроме того, если вы используете Github и Bower для частного репо, вы можете создать файл .netrc
, если вам нужно запустить bower install
на удаленном сервере.
например. У вас есть капелька DO и нужно проверить репозиторий git, который использует ключи ssh, но ему нужно запустить bower install
с некоторыми частями, которые являются частными. Если вы добавите файл .netrc
на свой удаленный компьютер, вам будет полезно пойти на развертывание/сборку.
// .netrc where someToken is generated in Github under Personal access token
machine github.com
login userName
password someToken
Ответ 3
У меня возникли проблемы с работой bower login
, поэтому я пошел с этим подходом. <TOKEN>
генерируется здесь. Он работает для частных репозиториев, размещенных на Github.
"dependencies": {
"your-package": "https://<TOKEN>:[email protected]/Account/Repository.git"
}
Ответ 4
У TeamCity была эта проблема для нас при попытке загрузить частное репо из GitHub. В случае, если это поможет кому-то решить его с помощью SSH и предоставить токен личного доступа GitHub, запустив bower login
до bower install
:
Пример зависимости в bower.json:
"repository": "[email protected]:Account/Repository.git"
Команды для запуска внутри сборки script:
bower login -t {GitHub Personal Access Token}
bower install
Ответ 5
перейдите в https://github.com/settings/tokens, сгенерируйте свой токен
bower login -t {your token}
bower install
Ответ 6
Вы можете столкнуться с этой проблемой, если вы клонируете также из частного репо.
Принятый ответ правильный, однако я хочу уточнить эту проблему:
-
если у вас есть доступ к вашему компьютеру github SSH, перейдите в репозиторий git и скопируйте ссылку "клонировать с SSH", а затем поместите его в файл bower.json.
-
если у вас установлена https (авторизация входа) для github на компьютере, скопируйте ссылку "clone with https", а затем поместите ее в файл bower.json.
хранилище
Пример:
Ссылка SSH: git @github.com: Account/Repository.git
Ссылка HTTPS: https://github.com/Account/Repository.git
Файл Bower.json:
"dependencies": {
"repository": "paste SSH/HTTPS clone line here"
}
Ответ 7
Как уже упоминалось, установка расположения пакета:
"[email protected]:projects/yourproject.git"
Позволяет выходить из хранилища git.
Если у вас возникла проблема с SSH в Windows, вы можете выполнить следующие действия:
- Загрузите инструменты PuTTY
- Используйте PuttyGen для генерации нового ключа.
- Сохраните закрытый ключ для вашей папки .ssh.
anything.ppk
- Скопировать текст, начинающийся
ssh-rsa
в putty gen в буфер обмена
- Перейдите в github и
Settings -> SSH keys -> Add SSH key
, давая вашему ключу заголовок и вставляя текст из PuttyGen в ключевую часть
- Добавьте переменную окружения с именем
GIT_SSH
со значением, являющимся путем пути к инструменту PLTIK.exe для Putty, например. C:\Program Files\Putty\PLINK.exe
- Запустите средство Putty "Pageant.exe", а затем добавьте ключ
anything.ppk
к странице (вы можете добавить ярлык в свою папку автозагрузки с помощью C:\pathtopageant\pageant.exe C:\Users\myuser\.ssh\anything.ppk
, чтобы автоматически добавлять ключ к конкурсу при запуске).
- Откройте
putty.exe
самостоятельно, введите свое имя хоста github enteprise (code.organization.com в приведенном выше примере) или "github.com" в текстовое поле hostname и нажмите "Открыть". Вероятно, вам будет предложено доверять хосту, нажмите "Да", чтобы добавить его в файл known_hosts, поскольку bower не может сделать это при первом запуске и просто повесил бы
- Наконец запустите
bower install
!
Ответ 8
Я закончил следующим, хотя работал только для частных репозиториев 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.