Постачальник Bitbucket не пропонує (навіть у стандартних та преміальних тарифах, що базуються на платі ) можливості зберігати SSH-ключі з дозволами на запис на рівні сховища. Зберігання вашого особистого ключа SSH на робочому сервері не є можливим, інакше ви зможете отримати доступ до всіх інших проектів, над якими ви зараз працюєте. Існують так звані ключі доступу , але вони дозволяють лише права на читання.
Отже, якщо ви розробляєте проект локально, а потім інтегруєте це сховище на робочий сервер із доступом до запису, є два варіанти: або ви створюєте для цього власного користувача (для ліцензії та для 5 або більше користувачів), або можете використовувати його досить невідома переадресація агента SSH .
За допомогою цієї процедури ви можете повторно використовувати свій локальний ключ SSH на віддаленому сервері в поточному сеансі без необхідності постійно зберігати там ключ. Налаштування просте: спочатку переконайтеся, що ви можете підключитися безпосередньо як до віддаленого сервера, так і до Bitbucket, використовуючи ваш ключ SSH. Потім запустіть агент SSH на вашому локальному комп'ютері за допомогою eval `ssh-agent -s` і збережіть свій поточний ключ за допомогою ssh-add -k . З активованою переадресацією агента тепер ви можете підключитися до віддаленого сервера за допомогою ssh -A username @ host1, а потім отримати доступ до вашого сховища Bitbucket, не вводячи там SSH-ключ віддаленого сервера.
Іншою альтернативою є перехід на зовсім іншого провайдера: GitLab, наприклад, вже пропонує квоту 10 ГБ (порівняно з 2 ГБ з Bitbucket), необмежену кількість членів команди та так звані ключі розгортання у вільному тарифі. Це означає, що в кожному сховищі може зберігатися будь-яка кількість додаткових ключів SSH (наприклад, із робочого сервера), які надають доступ до запису до сховища.