2009-03-19 7 views

Respuesta

4

Por defecto, svn (y la mayoría de las aplicaciones Unix) Pase su nombre de usuario local como el nombre de usuario de inicio de sesión remoto. Sospecho que el nombre de su cuenta en el servidor de Subversion es diferente de su nombre de cuenta local. Por lo tanto, la autenticación falla la primera vez que ingresa su contraseña de Subversion y svn, como la mayoría de las aplicaciones de Unix, luego solicita el nombre de usuario y la contraseña remotos e intenta volver a autenticarse. Puede pasar su nombre de usuario remoto utilizando la opción --username-svn:

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

Subversion <= 1.5 compatible con el llavero OSX y Windows CryptoAPI. Subversion 1.6 agrega el almacén de claves de Kde de Gnome a esa lista –

+0

¡Gracias por la información! Voy a corregir mi respuesta. –

1

¿Puede dar más información? El almacenamiento en caché de claves de las contraseñas no se agregó hasta Subversion 1.4.x. Tienes algún error? Necesitaremos más información para ayudar.

3

He resuelto este problema simplemente eliminando el archivo de autenticación correspondiente en ~/.subversion/auth/svn.simple (encuentra el correcto con grep ya que se llaman divertidos). Luego, después del siguiente svn up en ese repositorio (donde svn preguntó por nombre de usuario y contraseña) ahora está funcionando correctamente.

1

tuve un problema similar con OS X en la que SVN simplemente se negó a usar mis credenciales almacenadas, a pesar de su registro claro de llavero con acceso concedido a SVN.

Resulta que mi directorio ~/.subversion/auth tenía extraños permisos.

sudo chmod 777 ~/.subversion/auth resolvió mi problema.

+1

No marque los directorios de credenciales como de escritura mundial. –

0

No tengo la respuesta, pero observo que si estoy conectado a mi máquina localmente, entonces subversion leerá la contraseña de llavero, pero si ssh en el mac desde una máquina de eliminación, entonces subversión no lee la contraseña de llavero.

Parece que el inicio de sesión ssh pone el comando svn en un entorno que no tiene acceso a la llave ...

Podría ser el problema?

+3

Si ha iniciado sesión a través de ssh, puede emitir 'security unlock-keychain ~/Library/Keychains/login.keychain' para obtener acceso al llavero predeterminado. –

5

Tengo esta resuelto cambiando de forma recursiva el propietario del directorio de autenticación de la subversión:

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

(usuario anterior: Grupo pareja se establece en root:staff)

También es necesario establecer password-stores = keychain en el archivo de configuración de subversión:

~/.subversion/config

+0

¡Me lo arreglaron! –

+0

¡Gracias! Esto solucionó mi problema también. –

2

Me encontré con el mismo problema al ejecutar comandos svn desde una ventana ssh. En función de algunos comentarios anteriores, eliminé el archivo asociado en ~/.subversion/auth/svn.simple y luego ejecuté mi comando svn desde una sesión de terminal directamente en el cuadro de OSX, lo que hizo que apareciera una ventana preguntando si quería otorgar permiso para que svn lea mi llavero. Le concedí permiso por siempre y ahora el comando svn en mi ventana ssh funciona sin pedirme mi contraseña.

+0

Esto también funcionó para mí. Siento que todas estas respuestas son aplicables en algún momento: probablemente podrían consolidarse en una guía de solución de problemas o algo así. –

Cuestiones relacionadas