Background: una volta avevo installato tutto alla perfezione:
$ svn co https://domain:443/ test1
Error validating server certificate for 'https://domain:443':
- The certificate is not issued by a trusted authority. Use the
fingerprint to validate the certificate manually!
Certificate information:
- Hostname: **REMOVED**
- Valid: **REMOVED**
- Issuer: **REMOVED**
- Fingerprint: **checked with issuer and REMOVED**
(R)eject, accept (t)emporarily or accept (p)ermanently? p
Authentication realm: <https://domain:443> Subversion repository
Password for 'nicdumz-machine-hostname':
Authentication realm: <https://domain:443> Subversion repository
Username: nicdumz
Password for 'nicdumz':
# proceeds to checkout correctly
$ svn co https://domain:443/ test2
# checkouts nicely, without asking for my password.
Ad un certo punto avevo bisogno di impegnarmi con un altro account. Quindi l'ho fatto
$ svn ci --username other.user
Authentication realm: <https://domain:443> Subversion repository
Password for 'other.user':
# works fine
Ma da allora, ogni volta che voglio impegnarmi come 'nicdumz' (utente predefinito, tutti i repository sono stati estratti con quell'utente), mi chiede la mia password:
$ svn ci
Authentication realm: <https://domain:443> Subversion repository
Password for 'nicdumz':
Ehi, dai, perché :) Lo stesso succede se voglio un nuovo checkout, dato che anche l'accesso in lettura è protetto.
Quindi ho provato a risolvere il problema da solo. Ho letto che ~ / .subversion / auth stava memorizzando le credenziali, quindi l'ho rimosso dal modo:
$ cd ~/.subversion
$ mv auth oldauth
$ mkdir auth
All'inizio sembrava funzionare, perché svn si era dimenticato della convalida del certificato:
$ svn co https://domain:443/ test3
Error validating server certificate for 'https://domain:443':
- The certificate is not issued by a trusted authority. Use the
fingerprint to validate the certificate manually!
Certificate information:
- Hostname: **REMOVED**
- Valid: **REMOVED**
- Issuer: **REMOVED**
- Fingerprint: **checked with issuer and REMOVED**
(R)eject, accept (t)emporarily or accept (p)ermanently? p
Authentication realm: <https://domain:443> Subversion repository
Password for 'nicdumz-machine-hostname':
Authentication realm: <https://domain:443> Subversion repository
Username: nicdumz
Password for 'nicdumz':
# proceeds to checkout correctly
$ svn up
Authentication realm: <https://domain:443> Subversion repository
Password for 'nicdumz':
Che cosa? come sta succedendo questo?
Se hai suggerimenti per indagare di più sul comportamento, sono molto interessato. Se ho ragione, non c'è modo di fare un verboso svn up
o qualcosa del genere, quindi non sono sicuro di dover indagare. Oh, e per quello che vale:
$ svn --version
svn, version 1.6.6 (r40053)
compiled Oct 26 2009, 06:19:08
Copyright (C) 2000-2009 CollabNet.
Subversion is open source software, see http://subversion.tigris.org/
This product includes software developed by CollabNet (http://www.Collab.Net/).
The following repository access (RA) modules are available:
* ra_neon : Module for accessing a repository via WebDAV protocol using Neon.
- handles 'http' scheme
- handles 'https' scheme
* ra_svn : Module for accessing a repository using the svn network protocol.
- with Cyrus SASL authentication
- handles 'svn' scheme
* ra_local : Module for accessing a repository on local disk.
- handles 'file' scheme
* ra_serf : Module for accessing a repository via WebDAV protocol using serf.
- handles 'http' scheme
- handles 'https' scheme