2009-03-19 3 views
6

Unter Mac OS X Leopard Passwort zu erhalten - wenn ich versuche, und ein Remote-Repository von Terminal zugreifen es fragt immer: 1. Passwort 2. Benutzername 3. Passwort (wieder)Subversion auf Mac - weigert sich aus Schlüsselanhänger

mit der Meldung: „Authentifizierungsbereich: http://svn.myserver.com:80 Subversion“

ich habe überprüft und meine Anmeldeinformationen in Schlüsselanhängern und SVN hat sie Zugriff gespeichert werden. Warum wird es sie nicht benutzen?

Antwort

4

Standardmäßig geben svn (und die meisten Unix-Apps) Ihren lokalen Benutzernamen als Benutzername für die Remote-Anmeldung weiter. Ich vermute, dass sich Ihr Kontoname auf dem Subversion-Server von Ihrem lokalen Kontonamen unterscheidet. Daher schlägt die Authentifizierung bei der ersten Eingabe Ihres Subversion-Passworts fehl und svn fragt wie die meisten Unix-Apps nach dem Remote-Benutzernamen und -Passwort und versucht, sich erneut zu authentifizieren.

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

Subversion <= 1.5 unterstützt den OSX-Schlüsselbund und Windows CryptoAPI. Subversion 1.6 fügt Gnome's einen Kde Keystore zu dieser Liste hinzu –

+0

Danke für die Info! Ich korrigiere meine Antwort. –

1

Können Sie weitere Informationen: Sie können Remote-Benutzernamen mit der --username Option svn passieren? Keychain-Caching von Passwörtern wurde erst ab Subversion 1.4.x hinzugefügt. Haben Sie einen Fehler? Wir brauchen mehr Informationen, um zu helfen.

3

Ich löste dieses Problem, indem ich einfach die entsprechende Authentifizierungsdatei in ~/.subversion/auth/svn.simple entfernte (finde die richtige mit grep, wie sie lustig heißt). Nach dem nächsten Update in diesem Repository (wo Svn nach Benutzername und Passwort gefragt hat) funktioniert es jetzt korrekt.

1

Ich hatte ein ähnliches Problem mit OS X, in dem SVN einfach abgelehnt, meine gespeicherten Anmeldeinformationen zu verwenden, trotz ihrer eindeutigen Registrierung in Schlüsselbund mit Zugriff auf svn gewährt.

Stellt sich heraus mein ~/.subversion/auth Verzeichnis hatte ungerade Berechtigungen.

sudo chmod 777 ~/.subversion/auth löste mein Problem.

+1

Kennzeichnen Sie keine Anmeldeverzeichnisse als schreibbar. –

0

Ich habe die Antwort nicht, aber ich stelle fest, dass wenn ich in meinem Rechner lokal angemeldet bin, dann Subversion das Schlüsselbundpasswort lesen wird, aber wenn ich von einem entfernten Rechner ssh in den Mac, dann wird Subversion nicht Lies das Schlüsselbundpasswort.

Es scheint, dass der SSH-Login in der SVN-Befehl in einer Umgebung setzt, die keinen Zugriff auf den Schlüsselbund hat ...

, dass Ihr Problem sein könnte?

+3

Wenn Sie sich über ssh angemeldet haben, können Sie 'security unlock-keychain ~/Library/Keychains/login.keychain' eingeben, um auf den Standard-Schlüsselbund zuzugreifen. –

5

Ich habe dies durch rekursiv Änderung der Besitzer des Subversion-Authentifizierung Verzeichnis gelöst:

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

(vorherige Benutzer: Gruppe Paar auf root:staff gesetzt wurde)

Sie müssen auch festlegen password-stores = keychain auf Subversion Konfigurationsdatei:

~/.subversion/config

+0

Behoben für mich! –

+0

Danke! Dies hat mein Problem ebenfalls behoben. –

2

Ich lief das gleiche Problem beim Ausführen von Svn-Befehle aus einem SSH-Fenster. Basierend auf einigen obigen Kommentaren habe ich die zugehörige Datei unter ~/.subversion/auth/svn entfernt.Einfach und dann lief mein Svn-Befehl von einer Terminal-Sitzung direkt auf der OSX-Box, die ein Fenster Pop-up fragte gefragt, ob ich die Erlaubnis für svn, meinen Schlüsselbund zu lesen geben wollte. Ich habe es für immer genehmigt und jetzt funktioniert der Befehl svn in meinem ssh-Fenster, ohne mich nach meinem Passwort zu fragen.

+0

Dies funktionierte auch für mich - ich glaube, dass all diese Antworten zu einem bestimmten Zeitpunkt anwendbar sind: könnte möglicherweise in einer Anleitung zur Fehlerbehebung oder etwas ähnlich sein. –