我正在使用远程 git 托管服务 (Svnrepository.com)。在使用 git 1.7.x 作为客户端时,我能够成功访问 git 存储库,但是一旦我将客户端升级到 git 1.8.x,我就不再能够推送:推送挂起。托管服务的支持声称这是因为他们使用的是不支持 1.8 版的旧 git 服务器。
- 如何使用 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
。)