11
votes

Comment s'engager à SVN lorsque le nom d'utilisateur distant diffère de la section locale?

Je développe sur un Mac et à l'aide d'un serveur SVN sur une autre machine à l'aide de svn_ssh .
Bien que j'ai pu effectuer une première check-in et départ, je ne peux pas faire de commettre de la ligne de commande car le système tente d'utiliser mon nom d'utilisateur local jondoe (et invite un mot de passe) lors de la connexion au serveur distant où mon nom d'utilisateur est johnd .

Alors, comment puis-je dire à la SVN + SSH d'utiliser johnd pour mes commits?


0 commentaires

3 Réponses :


5
votes
  1. Sauvegardez vos modifications (simplement modifiées des fichiers, vous ne devez pas remplacer .svn répertoire)
  2. Checkout à nouveau, mais maintenant en utilisant votre nom d'utilisateur distant XXX

  3. restaurer vos modifications de la sauvegarde

  4. commettez-les XXX

    Je viens de vérifier et de vous engager avec différents noms d'utilisateur locaux et ssh.


2 commentaires

Merci mais cela donne l'erreur: Svn: Doit donner le chemin local (pas l'URL) comme cible d'un commit. J'ai essayé comme ceci: Svn COMMT -M 'Résumé des changements ". SVN + SSH: // My-Username @ My-Server / My-Home / My-Repo Utilisez simplement. Pour myfiles


Ok, cela semble avoir travaillé mais je republierai ici si je commence à obtenir la même erreur plus tard. Je devais modifier vos instructions pour le faire fonctionner comme lorsque j'ai fait la caisse, il a échoué à dire que "MyApp est déjà une copie de travail pour une URL différente". Donc, je viens de déplacer le myapp Dir pour myappxyz, puis votre suggestion a fonctionné. J'avais pensé de le faire de cette façon, mais j'espérais ne pas que je soupçonne que l'erreur se reproduise, car cela est à peu près de la même manière que j'ai initialement vérifié mon projet. Merci.



39
votes

Utiliser - nom d'utilisateur option xxx


4 commentaires

Merci mais qui donne une autre erreur: SVN COMMIT-NOME JOHND SVN: COMMITE a échoué (Détails Suivre): SVN: Système ('Vim SVN-BIGT.TMP') Retourné 256 SVN: Votre message de validation a été laissé dans un fichier temporaire: SVN : '/USers/johndoe/development/myapp/svn-commit.tmp'


@Calgacus - J'ai un Mac et utilisez le même type de syntaxe pour définir le nom d'utilisateur Subversion. Lorsque vous le donnez - Nom d'utilisateur , il aurait dû demander un mot de passe. Vous pouvez également transmettre un mot de passe via le paramètre - mot de passe . Je me demande si le problème que vous avez est avec la commande vim et non avec la commande SVN elle-même. Essayez svn commit -user johnd -m "commettre description" qui contourne vim pour entrer dans le message de validation.


@Calgacus: On dirait que SVN n'a pas réussi à trouver votre éditeur par défaut. Soit définir éditeur ou svn_editor Variables d'environnement de manière appropriée ou passez le message de validation par -M option. Voir aussi cette question .


Si c'est aussi facile, pourquoi certaines personnes créent un utilisateur système dédié juste pour s'engager dans un référentiel SVN?



3
votes

dans votre ~ / .ssh / config , ajoutez une section comme ceci: xxx

remplacer svn.example.com avec Le nom d'hôte du serveur SVN.

Ceci fonctionnera pour toutes les connexions SSH, pas seulement des liaisons liées à la subversion.

Voir aussi la page manuelle ssh_config , que vous pourrez peut-être lire en exécutant man ssh_config dans une coquille.


0 commentaires