Git svn clone - passpass pass дает "Неизвестный параметр: пароль"

Я хочу клонировать репозиторий svn, используя git, с именем пользователя и паролем, указанными в командной строке.

Я могу написать:

svn checkout --username user --password pass svn://server/repo

Но я не могу использовать --password с git svn clone:

git svn clone --username user --password pass svn://server/repo
Unknown option: password

Как я могу указать пароль git svn clone в командной строке?

Альтернативно, существует ли какой-то --svn-options переключатель в git -svn?

П.-S. Обратите внимание, что мне нужно указать его в командной строке, потому что на этом сервере есть несколько репозиториев с разными user/pass, а svn глупо предполагает, что все репозитории используют одно и то же имя пользователя/пароль, поэтому половину времени я получаю svn: Authorization failed, без запроса пароля, даже если я использую --username (иногда он запрашивает пароль, но он недостаточно прочен, чтобы использоваться в script).

Ответы

Ответ 1

git svn использует команды SVN напрямую и, следовательно, внутренний пароль SVN.

Запустите команду:

svn checkout --username user --password pass svn://server/repo

и пусть SVN запоминает ваш пароль.

Если это не сработает, удалите сохраненные аутентификации SVN:

$HOME/.subversion/auth/svn.simple/*

Затем git svn clone предложит ввести пароль.

Ответ 2

Просто укажите имя пользователя с --username, и вам будет предложено ввести пароль.

Подробнее см. git svn --help или man git svn.