Як я можу змусити субверсію скинути збережені паролі / користувачів та запам'ятати свої облікові дані для автентифікації?


14

Передісторія: У моєму новому встановленні раніше все працювало чудово:

$ 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.

У якийсь момент мені потрібно було зробити речі, використовуючи інший обліковий запис. Тому я це зробив

$ svn ci --username other.user
Authentication realm: <https://domain:443> Subversion repository
Password for 'other.user':

# works fine

Але з тих пір, щоразу, коли я хочу взяти на себе обов'язок "nicdumz" (користувач за замовчуванням, всі репости були зареєстровані з цим користувачем), це запросить мене на пароль:

$ svn ci
Authentication realm: <https://domain:443> Subversion repository
Password for 'nicdumz':

Гей, давай, чому :) Те саме відбувається, якщо я хочу свіжий замовлення, оскільки доступ для читання також захищений.

Тож я спробував вирішити проблему сам. Я читав, що ~ / .subversion / auth зберігав облікові дані, тому я видалив його із шляху:

$ cd ~/.subversion
$ mv auth oldauth
$ mkdir auth

Спочатку, здавалося, працює, тому що svn забув про перевірку сертифікатів:

$ 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':

Що? як це відбувається?

Якщо у вас є пропозиції вивчити більше поведінки, я дуже зацікавлений. Якщо я маю рацію, немає ніякого способу зробити багатослівний svn upабо щось подібне, тому я не впевнений, чи варто йти на розслідування. О, і для чого це варто:

$ 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

Відповіді:


14

Ну, у мене була така ж проблема, і я видалив каталог авторів. Я тоді:

svn --username xxx update

який запитав мене паролем, але тоді це було все. Все, що я можу сказати, - це видалення каталогу auth для мене працювало. Чи є у вас файли серверів належних параметрів? А саме (я думаю):

store-passwords = yes
store-plaintext-passwords = yes

у [global]розділі. Я не впевнений на 100%, але це може допомогти.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.