Учитывая, что это направление не имеет ничего общего на этом этапе, неясно, почему Git сохраняет транспортный протокол открытым, пока не будет выполнено разрешение. В другом направлении - если вы настаиваете - ваш Git должен держать соединение открытым во время разрешения получателя поставляемого тонкого пакета, поскольку ссылки на серверные обновления еще не произошли, в то время как ваш собственный Git должен знать, успешны. Таким образом, для push ваш Git должен держать соединение открытым, дождаться окончания разрешения и дождаться, чтобы увидеть, что его Git сообщает для фазы обновления ссылки.
Однако для клонов их Git не заботится о том, может ли ваш Git обновлять ваши ссылки. Должна быть возможность закрыть транспорт раньше. Вероятно, есть некоторые неудачные конструкции кода, которые прямо сейчас делают это слишком сложным, из-за чего Git вместо этого оставляет соединение открытым.