SourceTree sous Windows: Comment se connecter à SSH?

J’ai un access SSH à mon hébergement Web, cela fonctionne très bien avec PuTTY (il me fallait juste entrer mon domaine, mon nom d’utilisateur et mon mot de passe), mais cela semble beaucoup plus compliqué avec SourceTree.

Bien que PuTTY ait un champ pour “Nom d’hôte”, “nom d’utilisateur” et “mot de passe”, SourceTree ne nécessite pas et nécessite un fichier spécial ” .ppk “?!

Je dois connecter SourceTree à mon hébergement Web via SSH pour la raison évidente que je veux l’utiliser pour envoyer un fichier dans un référentiel distant situé sur mon hébergement Web.

Comment puis-je obtenir un fichier .ppk généré à partir de mon domaine / nom d’utilisateur / mot de passe? Toute aide grandement appréciée!

PS: J’ai remarqué qu’il était extrêmement facile de se connecter à BitBucket en offrant deux champs simples: “nom d’utilisateur” et “mot de passe”, et rendait la connexion à un tiers SSH particulièrement difficile … Est-ce intentionnel? tenter d’empêcher la concurrence?!

    Il existe deux manières de connecter SourceTree à n’importe quel SSH.

    1: le plus simple

    La manière la plus simple est d’utiliser votre nom de domaine, votre nom d’utilisateur et votre mot de passe fournis par votre fournisseur d’hébergement Web:

    Utilisez simplement la syntaxe suivante: ssh://[email protected]/ – SourceTree vous demandera alors d’entrer votre mot de passe chaque fois que vous appuierez sur ce SSH:

    Invite de mot de passe SSH SourceTree

    Si vous cochez la case Remember password , votre mot de passe sera enregistré et vous ne serez plus invité à le faire. Vous pouvez modifier ou supprimer le mot de passe stocké ultérieurement en sélectionnant Tools > Options > Authentication comme illustré ci-dessous:

    Panneau d'authentification Windows SourceTree

    Remarque: Dans mon cas (hébergement partagé 1 & 1), le nom d’utilisateur et le mot de passe étaient les mêmes que mon compte FTP principal.

    2: La manière la plus complexe

    La manière la plus complexe consiste à utiliser une paire de clés privées / publiques:

    Cela implique de générer deux clés (une “privée” et une “publique”) à l’aide du ” PuTTY Key Generator ” (dans SourceTree, allez dans Tools > Create or Import SSH Keys ).

    Une fois générée, enregistrez la clé privée dans un fichier .ppk et chargez-la dans SourceTree ( Tools > Create or Import SSH Keys > Load ). Ce n’est pas encore fini: vous devez maintenant append la clé publique à votre serveur. Pour ce faire, ajoutez-le au fichier suivant sur votre serveur Web: /.ssh/authorized_keys .

    Si ce fichier n’existe pas, enregistrez votre clé publique dans un fichier nommé authorized_keys et téléchargez-le sur votre serveur via FTP. Vous devez le télécharger dans un répertoire nommé /.ssh/ situé à la racine (s’il n’existe pas, créez-le simplement).

    Remarque: assurez-vous d’utiliser le compte FTP principal de votre compte d’hébergement. Si cela ne fonctionne pas, ajustez les permissions (chmod) du fichier authorized_keys et réglez-le sur 777 utilisant votre logiciel FTP ( Right-click on "authorized_keys" > File permissions ):

    FileZilla FTP Client Permissions de fichier de modification

    FileZilla FTP Client sous Windows - Définir chmod

    Pas besoin de ligne de commande que ce soit.

    J’ai eu du mal à faire fonctionner SourceTree avec un repo git existant résidant sur gitlab. J’ai également dû comprendre pourquoi il ne se connectait pas, car j’utilisais puttygen pour générer les clés.

    Assurez-vous, après avoir généré vos clés, de l’exporter au format OpenSSH

    entrer la description de l'image ici

    Vous placez ce fichier dans votre dossier c: \ user \ MYUSERNAME.ssh en tant que fichier:

    • id_rsa
    • id_rsa.pub

    id_rsa est le fichier de clé privée et .pub est le fichier de clé publique que vous collez dans votre autre application, qui dans mon cas était gitlab.

    J’ai dû faire un travail supplémentaire à partir de la réponse de Patoshi .

    Dans Outils> Options> Général> Configuration du client SSH, j’ai dû pointer vers la clé id_rsa et sélectionner OpenSSH comme client SSH (Putty / PLink est sélectionné par défaut). Configuration du client SSH

    Ensuite, chaque fois que vous démarrez SourceTree, une invite apparaît pour vous demander de déchiffrer la clé id_rsa à l’aide de la phrase secrète (en supposant que vous l’ayez créée avec une phrase secrète pour la chiffrer). Cela ressemble à ça: invite de phrase secrète

    À ce stade, je pourrais aller sur la page Clone, coller l’adresse SSH de mon projet Gitlab ([email protected]: Blah / Whatever.git) et la cloner. Aucune invite supplémentaire pour le nom d’utilisateur ou le mot de passe (car il utilise des clés SSH).