Работа с git версии 1.8.3.1;
git clone -c core.askPass $echo url/or/path/to/git/repo
Конфигурация core.askPass
работает путем передачи управления обработкой учетных данных вышеупомянутой программе. Однако, поскольку $echo
ничего не может сделать, кроме вывода, попытка клонирования быстро завершается неудачей, и применяется соответствующее перенаправление bash. Этот код вызывается только в том случае, если репозиторий git оказывается закрытым, и передаст сообщение об ошибке, сообщающее, что аутентификация не удалась для конкретного репозитория. Вы можете проверить это в https://github.com/git/git
общедоступном репозитории против частного репозитория, о котором вы знаете.
Чтобы подсластить сделку, вам даже не нужно ссылаться на программу, как echo
в первую очередь. Простая передача конфигурации git -c core.askPass
без последующего ввода может привести к сбою в случае, если хранилище окажется закрытым, так как код не будет знать, в какую программу перегрузить обработку учетных данных. Хотя это, безусловно, более старый и простой метод, чем другие, упомянутые здесь, я не знаю, будет ли он иметь такой же эффект в более старых версиях git.