2009-03-19 14 views

Odpowiedz

4

Domyślnie svn (i większość aplikacji dla systemu Unix) przekazuje nazwę użytkownika lokalnego jako nazwę użytkownika do zdalnego logowania. Podejrzewam, że nazwa twojego konta na serwerze Subversion jest inna niż nazwa twojego konta lokalnego. Tak więc uwierzytelnianie kończy się niepowodzeniem przy pierwszym wpisaniu hasła Subversion, a svn, podobnie jak większość aplikacji Unixa, prosi o podanie nazwy użytkownika i hasła oraz próbuje ponownie uwierzytelnić. Można zdać zdalnego nazwę użytkownika za pomocą opcji do svn--username:

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

Subversion <= 1,5 obsługuje pęta kluczy OSX i Windows CryptoAPI. Subversion 1.6 dodaje Gnome's keystore KDE do tej listy –

+0

Dzięki za informacje! Poprawię moją odpowiedź. –

1

można podać więcej informacji? Przechowywanie haseł z pękiem kluczy nie było dodawane do wersji Subversion 1.4.x. Czy masz jakiś błąd? Potrzebujemy więcej informacji, aby pomóc.

3

Rozwiązałem ten problem, po prostu usuwając odpowiedni plik uwierzytelniający z ~/.subversion/auth/svn.simple (znajdź właściwy z grep, ponieważ nazywają się śmieszne). Następnie po następnym svn w tym repozytorium (gdzie svn zapytał o nazwę użytkownika i hasło), teraz działa poprawnie.

1

Miałem podobny problem z OS X, w którym SVN po prostu odmówił użycia moich zapisanych poświadczeń, pomimo ich wyraźnej rejestracji w pęku kluczy z dostępem przyznanym svn.

Okazało się, że mój katalog ~/.subversion/auth miał nieparzyste uprawnienia.

sudo chmod 777 ~/.subversion/auth Rozwiązałem mój problem.

+1

Nie oznaczaj katalogów referencji jako zapisywalnych na całym świecie. –

0

Nie mam odpowiedzi, ale zauważam, że jeśli jestem lokalnie zalogowany na moim komputerze, to subversion odczyta hasło do keychain, ale jeśli ssh wejdę do mac z maszyny usuwającej, wówczas subversion nie będzie przeczytaj hasło pęku kluczy.

Wydaje się, że logowanie ssh stawia polecenia svn w środowisku, które nie mają dostępu do pęku kluczy ...

Czy to może być problem?

+3

Jeśli zalogowałeś się przez ssh, możesz wydać 'security unlock-keychain ~/Library/Keychains/login.keychain', aby uzyskać dostęp do domyślnego pęku kluczy. –

5

mam to rozwiązane przez rekurencyjnie zmienia właściciela katalogu uwierzytelniania Subversion:

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

(poprzednia użytkownik: grupa para została ustawiona na root:staff)

trzeba także ustawić password-stores = keychain w pliku konfiguracyjnym subversion:

~/.subversion/config

+0

Naprawiono go dla mnie! –

+0

Dziękujemy! To również naprawiło mój problem. –

2

Wystąpił ten sam problem podczas uruchamiania poleceń svn z okna ssh. Na podstawie powyższych komentarzy usunąłem powiązany plik pod ~/.subversion/auth/svn.proste, a następnie uruchomiłem polecenie svn z sesji terminalowej bezpośrednio na pudełku OSX, które spowodowało wyświetlenie okna z zapytaniem, czy chcę zezwolić svn na odczytanie mojego pęku kluczy. Nadałem mu pozwolenie na zawsze, a teraz polecenie svn w moim oknie ssh działa bez pytania o moje hasło.

+0

To również zadziałało dla mnie - mam wrażenie, że wszystkie te odpowiedzi mają zastosowanie w pewnym momencie: prawdopodobnie można by je skonsolidować w przewodniku rozwiązywania problemów lub czymś podobnym. –

Powiązane problemy