Il provider Bitbucket non offre (anche nelle tariffe Standard e Premium a pagamento) la possibilità di memorizzare chiavi SSH con diritti di scrittura a livello di repository. Memorizzare la tua chiave SSH personale sul server di produzione non è un'opzione, altrimenti puoi accedere a tutti gli altri progetti su cui stai lavorando da lì. Esistono le cosiddette chiavi di accesso , ma consentono solo i diritti di lettura.
Quindi, se sviluppi localmente su un progetto e poi integri questo repository su un server di produzione con accesso in scrittura, ci sono due opzioni: o crei il tuo utente (con licenza e da 5 utenti a pagamento) per questo scopo, o usi l' inoltro dell'agente SSH piuttosto sconosciuto.
Con questa procedura è possibile riutilizzare la chiave SSH locale su un server remoto nella sessione corrente senza dover archiviare lì la chiave in modo permanente. La configurazione è semplice: innanzitutto, assicurati di poterti connettere direttamente sia al server remoto che a Bitbucket utilizzando la tua chiave SSH. Quindi avvii l'agente SSH sul tuo computer locale con eval `ssh-agent -s` e memorizzi la chiave corrente con ssh-add -k . Ora, con l'inoltro dell'agente attivato, ti connetti al server remoto tramite ssh -A nomeutente@host1 e puoi quindi accedere al tuo repository Bitbucket senza ulteriore richiesta di password e senza dover memorizzare lì la chiave SSH del server remoto.
Un'altra alternativa è passare a un provider completamente diverso: GitLab, ad esempio, offre già nel piano gratuito le cosiddette chiavi di deploy oltre a una quota di 10 GB (rispetto ai 2 GB di Bitbucket) e un numero illimitato di membri del team. Ciò consente di archiviare individualmente un numero qualsiasi di chiavi SSH aggiuntive (ad esempio dal server di produzione) per ciascun repository, che concedono i diritti di scrittura al repository.