Recently, when I tested my Git Over HTTP server, I found a bug in Git. When we used git -c protocol.version=2 clone --shallow-since , if the time format is wrong, it will cause git to wait indefinitely. Github supports Wire Protocol to reproduce, Gitlab does not support it and does not reproduce it. The commands that can be retried are as follows: ```shell # time format wrong git -c protocol.version=2 clone https://github.com/git/git.git --shallow-since=20151012 # trace GIT_TRACE=1 GIT_CURL_VERBOSE=1 GIT_TRACE_PACKET=2 git -c protocol.version=2 clone https://github.com/git/git.git --shallow-since=20151012 ``` We can see that the server closes the HTTP connection after sending the `shallow-info\n` message, and git-remote-http(s) is still waiting. ``` $ git --version --build-options git version 2.24.0 cpu: x86_64 no commit associated with this build sizeof-long: 8 sizeof-size_t: 8 ``` When the time format is correct, the clone is successful, so this is followed by the shallow-list£º ```shell GIT_TRACE=1 GIT_CURL_VERBOSE=1 GIT_TRACE_PACKET=2 git -c protocol.version=2 clone https://github.com/git/git.git --shallow-since=2015-10-12 ``` Github Issues: https://github.com/gitgitgadget/git/issues/457