web-dev-qa-db-fra.com

Clonage d'un référentiel Mercurial sur SSH

J'ai du mal à cloner mon référentiel Mercurial sur ssh.

Voici ce que j'ai essayé:

hg clone ssh://[email protected]/path/to/projectname projectname

Cela me donne cette erreur:

remote: bash: hg: command not found
abort: no suitable response from remote hg!

hg est cependant installé sur le serveur.

J'essayais de suivre les instructions sur ce site Web .

61
Josh

On dirait que hg n'est pas sur votre chemin. Le Mercurial FAQ mentionne des correctifs possibles pour ce problème: FAQ/CommonProblems .

Ajoutez la valeur remotecmd à votre configuration Mercurial en ouvrant ~/.hgrc (ou Mercurial.ini sous Windows) sur votre ordinateur client et en ajoutant les éléments suivants:

[ui]
remotecmd = /path/to/hg

/path/to/hg est le chemin d'accès à la commande hg sur le serveur distant.

Si vous rencontrez des problèmes avec votre configuration Mercurial, vous pouvez utiliser le hg showconfig --debug commande pour obtenir une liste complète de vos paramètres Mercurial ainsi que le chemin et le numéro de ligne du fichier de configuration qui définit chaque valeur de configuration.

35
Richard Cook

Vous avez besoin d'un double // après le nom d'hôte, c'est-à-dire:

hg clone ssh://[email protected]//path/to/projectname projectname
94
anteatersa

Il semble que Mercurial ne se trouve pas dans le PATH de votre utilisateur sur le serveur distant.

4
OneOfOne

Sur webfactional j'ai dû ajouter:

export PATH=$PATH:/home/<user>/bin

à .bashrc pour le faire fonctionner. (également suivi les conseils à distance ci-dessus)

2
kdahlhaus

Sur le serveur, tapez: nano ~/.bashrc finissez de modifier le fichier en ajoutant:

# User specific aliases and functions
export PATH=$PATH:$HOME/packages/Mercurial

En supposant que ~/packages est le dossier où Mercurial a été installé. Après l'édition, terminez avec source ~/.bashrc et essayez à nouveau.

Le plus élaboré m'a été très utile guide pour installer Mercurial sur un serveur d'hébergement Bluehost.

0
Serge Stroobandt

Vous pouvez utiliser Sourcetree, TortoiseHg, Mercurial à partir du terminal ou tout client que vous souhaitez cloner votre référentiel Mercurial. Ces instructions vous montrent comment cloner votre référentiel à l'aide de Mercurial à partir du terminal.

  1. Dans le référentiel, cliquez sur + dans la barre latérale globale et sélectionnez Cloner ce référentiel sous Se mettre au travail.
  2. Copiez la commande clone (au format SSH ou HTTPS). Si vous utilisez le protocole SSH, assurez-vous que votre clé publique est dans Bitbucket et chargée sur le système local sur lequel vous clonez.
  3. Dans une fenêtre de terminal, accédez au répertoire local dans lequel vous souhaitez cloner votre référentiel.
  4. Collez la commande que vous avez copiée à partir de Bitbucket, par exemple:
    CLONE SUR HTTPS:
    $ hg clone https://[email protected]/teamsinspace/hg-documentation-tests
    CLONE SUR SSH:
    $ hg clone ssh://[email protected]/teamsinspace/hg-documentation-tests
    Si le clonage a réussi, un nouveau sous-répertoire apparaît sur votre lecteur local.
    Ce répertoire porte le même nom que le référentiel Bitbucket que vous avez cloné.
    Le clone contient les fichiers et les métadonnées dont Mercurial a besoin pour conserver les modifications que vous apportez aux fichiers source.
0
Murari Kumar