Подтвердить что ты не робот

Проблемы совместимости между сервером git 1.8 и старше git

Я использую удаленную службу хостинга git (Svnrepository.com). Я могу успешно получить доступ к репозиториям git при использовании git 1.7.x в качестве клиента, но как только я обновляю клиент до git 1.8.x, я больше не могу нажать: толкает винт. Служба поддержки хостинга утверждает, что это связано с тем, что они используют более старый сервер git, который не поддерживает версию 1.8.

  • Как использовать git 1.8 в качестве клиента со старым сервером git?
  • Есть ли обходной путь?
  • Кто-нибудь знает, что такое точная несовместимость?
  • Является ли утверждение от поддержки даже правдоподобным? По какой-то причине я подумал, что git обладает отличной совместимостью назад/вперед, и не было причин опасаться, что обновление сломается git
  • Есть ли какая-то известная несовместимость, введенная в переходе 1.7- > ​​1.8, которая могла бы вызвать это?

По запросу здесь находится трассировка с GIT_TRACE=1. Похоже, что он висит во время работы git-http-push:

$ GIT_TRACE=1 git push -v
trace: built-in: git 'push' '-v'
Pushing to https://secure2.svnrepository.com/redacted/redacted/
trace: run_command: 'git-remote-https' 'origin' 'https://secure2.svnrepository.com/redacted/redacted/'
trace: run_command: 'http-push' '--helper-status' '--verbose' 'https://secure2.svnrepository.com/redacted/redacted/' 'refs/heads/master:refs/heads/master'
trace: exec: 'git' 'http-push' '--helper-status' '--verbose' 'https://secure2.svnrepository.com/redacted/redacted/' 'refs/heads/master:refs/heads/master'
trace: exec: 'git-http-push' '--helper-status' '--verbose' 'https://secure2.svnrepository.com/redacted/redacted/' 'refs/heads/master:refs/heads/master'
trace: run_command: 'git-http-push' '--helper-status' '--verbose' 'https://secure2.svnrepository.com/redacted/redacted/' 'refs/heads/master:refs/heads/master'

Он зависает после последней строки вывода. (Если вы предпочитаете, вы также можете посмотреть трассировку, где я установил как GIT_TRACE=1, так и GIT_CURL_VERBOSE=1.)

4b9b3361

Ответ 1

Желание работать с более современной версией git понятно, но если у вас есть выбор, не запускается текущая версия, почему бы вам не переключить хосты? Из одного только имени Svnrepository.com не похоже, что они сосредоточены на хостинге git. Если хостинг-сервис не является чем-то, что вы можете изменить, то об установке git1.7 где-то вне вашего пути и 1.8 обычно. Затем вы могли бы связать версию 1.7 с чем-то вроде oldgit, и когда вам нужно будет работать с Svnrepostiory.com, ваши команды будут похожи на oldgit add, oldgit commit, oldgit push.

Ответ 2

На странице Svnrepository.com говорится: "Стандартные функции: Git через SSH", и кажется, что вы просматриваете http: возможно, хорошо для доступа только для чтения. Если вы посмотрите на текстовый файл .git/config, вы увидите раздел [remote "origin" ], а значение "url" может быть установлено в формате host:/path/on/remote/machine, что подразумевает соединение SSH для Git