2009-03-19 4 views

Répondre

4

Par défaut, svn (et la plupart des applications Unix) transmettent votre nom d'utilisateur local comme nom d'utilisateur pour la connexion à distance. Je soupçonne que le nom de votre compte sur le serveur Subversion est différent de votre nom de compte local. Ainsi, l'authentification échoue la première fois que vous entrez votre mot de passe Subversion, et svn, comme la plupart des applications Unix demande alors le nom d'utilisateur et le mot de passe à distance et tente de réauthentifier. Vous pouvez transmettre votre nom d'utilisateur distant en utilisant l'option --username-svn:

svn --username [remote_username] ... 
+0

Subversion <= 1,5 pris en charge le trousseau OSX et Windows CryptoAPI. Subversion 1.6 ajoute Gnome's keystore d'un Kde à cette liste –

+0

Merci pour l'info! Je vais corriger ma réponse. –

1

Pouvez-vous fournir plus d'informations? Keychain mise en cache des mots de passe n'a pas été ajouté jusqu'à Subversion 1.4.x. Avez-vous une erreur? Nous aurons besoin de plus d'informations pour vous aider.

3

J'ai résolu ce problème en supprimant simplement le fichier d'authentification correspondant dans ~/.subversion/auth/svn.simple (trouver le bon avec grep car ils sont nommés drôle). Puis, après le prochain svn up dans ce dépôt (où svn a demandé un nom d'utilisateur et un mot de passe), il fonctionne maintenant correctement.

1

J'ai eu un problème similaire avec OS X dans lequel SVN a simplement refusé d'utiliser mes informations d'identification stockées, malgré leur inscription claire dans le trousseau avec accès accordé à svn.

Il s'avère que mon répertoire ~/.subversion/auth avait des permissions impaires.

sudo chmod 777 ~/.subversion/auth résolu mon problème.

+1

Ne marquez pas les répertoires d'informations d'identification en écriture universelle. –

0

Je n'ai pas la réponse, mais je remarque que si je suis connecté à mon ordinateur localement, subversion lira le mot de passe du trousseau, mais si je ssh dans le mac d'une machine remove, alors subversion ne sera pas lire le mot de passe du trousseau.

semble que la connexion ssh met la commande svn dans un environnement qui n'a pas accès au trousseau ...

Serait-ce votre problème?

+3

Si vous vous êtes connecté via ssh, vous pouvez lancer 'security unlock-keychain ~/Bibliothèque/Keychains/login.keychain' pour avoir accès au trousseau de clés par défaut. –

5

Je suis cette résolu en changeant récursive le propriétaire du répertoire d'authentification de la subversion:

sudo chown -R myuser:staff ~/.subversion/auth/

(précédent utilisateur : groupe couple a été mis à root:staff)

Vous devez également définir password-stores = keychain sur le fichier de configuration subversion:

~/.subversion/config

+0

Correction pour moi! –

+0

Merci! Cela a également résolu mon problème. –

2

J'ai rencontré le même problème lors de l'exécution de commandes svn à partir d'une fenêtre ssh. Sur la base de certains commentaires ci-dessus, j'ai supprimé le fichier associé sous ~/.subversion/auth/svn.simple, puis a exécuté ma commande svn à partir d'une session de terminal directement sur la boîte OSX qui a fait apparaître une fenêtre demandant si je voulais accorder à svn la permission de lire mon trousseau. Je lui ai accordé la permission pour toujours et maintenant la commande svn dans ma fenêtre de ssh fonctionne sans m'avoir invité pour mon mot de passe.

+0

Cela a également fonctionné pour moi - je pense que toutes ces réponses sont applicables à un moment donné: pourrait probablement être consolidé dans un guide de dépannage ou quelque chose. –

Questions connexes