Subversion на Mac – отказывается получить пароль от брелка

В Mac OS X Leopard – когда я пытаюсь получить доступ к удаленному репозиторию из терминала, он всегда запрашивает: 1. Пароль 2. Имя пользователя 3. Пароль (снова)

с сообщением: «Область аутентификации: http://svn.myserver.com:80 Subversion»

Я проверил и мои учетные данные хранятся в Keychain, и SVN имеет к ним доступ. Почему они не будут использовать их?

Я решил решить эту проблему путем рекурсивного изменения владельца каталога аутентификации subversion:

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

(предыдущий пользователь: группа была установлена ​​в root:staff )

Вам также необходимо установить password-stores = keychain в файле конфигурации subversion:

~/.subversion/config

По умолчанию svn (и большинство приложений Unix) передает ваше локальное имя пользователя в качестве имени пользователя для удаленного входа. Я подозреваю, что имя вашей учетной записи на сервере Subversion отличается от имени вашей локальной учетной записи. Таким образом, при первом вводе пароля Subversion аутентификация не выполняется, и svn , как и большинство приложений Unix, запрашивает имя пользователя и пароль удаленного пользователя и пытается повторно проверить подлинность. Вы можете передать свое имя удаленного пользователя с --username опции --username для svn :

 svn --username [remote_username] ... 

Я решил эту проблему, просто удалив соответствующий файл аутентификации в ~/.subversion/auth/svn.simple (найти правильный ~/.subversion/auth/svn.simple с помощью grep, поскольку они названы смешными). Затем, после следующего svn в этом репозитории (где svn спросил имя пользователя и пароль), он теперь работает правильно.

Я столкнулся с той же проблемой при запуске svn-команд из окна ssh. Основываясь на некоторых комментариях выше, я удалил связанный файл в ~ / .subversion / auth / svn.simple, а затем запустил мою команду svn из сеанса терминала непосредственно в поле OSX, в результате чего появилось окно с вопросом, хочу ли я предоставить разрешение на svn, чтобы прочитать мой брелок. Я предоставил ему разрешение навсегда, и теперь команда svn в моем ssh-окне работает без запроса моего пароля.

Можете ли вы предоставить дополнительную информацию? Кэширование ключей для паролей не добавлялось до Subversion 1.4.x. Вы получаете какую-либо ошибку? Нам понадобится дополнительная информация.

У меня была аналогичная проблема с OS X, в которой SVN просто отказался использовать мои сохраненные учетные данные, несмотря на их четкую регистрацию в цепочке ключей с доступом, предоставленным svn.

Оказывается, мой ~/.subversion/auth имел нечетные разрешения.

sudo chmod 777 ~/.subversion/auth разрешил мою проблему.

У меня нет ответа, но я замечаю, что если я зарегистрируюсь на своей машине локально, тогда subversion будет читать пароль keychain, но если я ssh в mac из машины удаления, тогда subversion не будет читать пароль keychain ,

Кажется, что ssh login ставит команду svn в среду, которая не имеет доступа к цепочке ключей …

Это может быть ваша проблема?