in Профессиональное

Assembla: несколько SSH ключей для разных проектов под одним пользователем

Небольшой хинт по использованию нескольких ключей (для различных проектов) для одного пользователя при работе с git.assembla.com в linux.

Вам по прежнему будет нужен уникальный ключ для каждого пользователя.

Ниже представлен небольшой workaround, позволяющий менять ключи для работы с различными проектами на assembla.com.

1) разместите где-либо в $PATH скриптик (назовем его gitssh):

#!/bin/sh
key=$(git config ssh.key)
 
if [ -z "$key" ]; then
  git_opts=""
else
  git_opts="-i ${key}"
fi
 
exec ssh $git_opts "$@"

2) установите переменную GIT_SSH чтобы она указывала на этот скрипт:

export GIT_SSH=gitssh

3) выполните настройку ключа для проекта1 в его директории

git config ssh.key ~/.ssh/my_cool_project1_key.pub

и для проекта2 в его директории

git config ssh.key ~/.ssh/my_cool_project2_key.pub

Вот и все работает ) Успехов!

http://www.assembla.com/spaces/breakoutdocs/wiki/Different_SSH_keys_for_different_projects

Write a Comment

Comment

*

  1. Честно говоря никогда не испытывал проблем с ключами (Работаю на 3 компьютерах и на стольких же проектах в Assembla), в чем проблемы возникли что бы юзать хинты? 🙂

    • Ну во-первых раз в КБ ассемблы есть такая запись, то видимо не зря 😉

      А пример – вот он. Два проекта с разных аккаунтов ассемблы надо выложить из-под одного юзера под линуксом (положим это демо-сервер). Первый проект ты выкладываешь с ключом из ~/.ssh/id_rsa – пока все идет нормально, пробуешь добавить тот же ключ для второго проекта (в интерфейсе ассемблы)… и фига. Ассембла скажет что такой ключ уже есть (ну да, ты ведь его уже загрузил ранее для первого проекта). В случае если создать другого юзера – не вариант, на помощь приходит этот мануальчик.