Мой провайдер веб-хостинга позволяет мне получить доступ к моему веб-пространству через WebDAV, поэтому я решил создать там репозиторий git, просто чтобы посмотреть, что произойдет. Клонирование репозитория только для чтения работает нормально, как "git clone http://my.server.com/repo.git" просто использует стандартный HTTP-транспорт.
Проблемы возникают, когда я пытаюсь использовать WebDAV, потому что мой идентификатор пользователя «[email protected]», и я должен использовать порт 2077. Это означает, что я должен сделать что-то вроде
git config remote.origin.pushurl http://[email protected]@my.server.com:2077/repo.git
и два знака @ в URL-адресе должны вызывать проблемы, потому что «git push origin master» сообщает об «ошибке 22».
Я попытался создать запись в файле .netrc
machine my.server.com
login [email protected]
password ****
но это, похоже, не помогло.
Я также пытался заменить первый «@» на «%», «\@» и «% 40», но ничего из этого не сработало.