Как безопасно повторить clone после fatal: early EOF: новый пустой каталог, проверка удалённого репозитория, журнал GitHub Desktop и запрет удаления папки с пользовательскими файлами.
Уточните, какие данные действительно под угрозой
Официальная документация Git определяет clone как создание нового каталога, remote-tracking branches и checkout начальной ветки. Ошибка в этом процессе не означает, что удалённый репозиторий потерял историю. Риск находится в локальной целевой папке: туда могли попасть неполные объекты Git и, если пользователь заранее положил туда свои файлы, несохранённая работа. До повторения откройте каталог в файловом менеджере и убедитесь, что кроме результата неудачного clone там нет созданных вами документов. Не удаляйте папку автоматически и не запускайте очистку диска. Если там есть пользовательские файлы, скопируйте их в безопасное место вне репозитория и только после этого отделяйте неполную загрузку.
Повторяйте clone в новый пустой каталог
Git разрешает клонирование в существующий каталог только если он пуст. Поэтому безопасный контроль — выбрать соседний новый путь с нейтральным именем, достаточным свободным местом и без синхронизации другим облачным клиентом. Скопируйте URL с официальной страницы репозитория, как рекомендует GitHub при разборе cloning errors. Если новый clone завершается, старую папку всё равно удаляют только после проверки пользовательских файлов. Если early EOF повторяется в том же месте, не запускайте бесконечный Retry: зафиксируйте объём переданных данных и время. Попытка с `--depth` или `--filter` меняет семантику clone и не является честным доказательством, что полный clone исправен, хотя Git официально поддерживает такие режимы для отдельных задач.
Разведите Desktop, Git и сетевой путь
Проведите не более двух сравнений: GitHub Desktop в новом каталоге и официальный Git CLI с тем же HTTPS URL и отдельным новым каталогом. Не добавляйте одновременно SSH, proxy и другой DNS. Если CLI проходит, а Desktop нет, сохраните версию встроенного Git и журнал Desktop. Если оба обрываются, результат указывает на общий транспортный или системный слой, но не назначает конкретного провайдера. Если web-страница репозитория недоступна или права изменились, early EOF может быть вторичным сообщением, и нужно сначала решить доступ. Не публикуйте URL приватного репозитория, access token или строки авторизации. Для публичного issue достаточно обезличить владельца и оставить размер и общий тип репозитория.
Соберите журнал без credentials
GitHub Docs показывает штатный путь Help → Show Logs в Finder или Explorer. Возьмите файл только за минуту неудачного clone и оставьте строки начала fetch, exact error, версию Desktop и время. Удалите токены, домашние пути, имя пользователя, приватные remotes и названия организаций. Добавьте доступное место на диске, тип подключения и результат нового пустого каталога. Не прикладывайте папку `.git` целиком: она велика и может содержать адреса remotes. Критерий остановки — два одинаковых обрыва или любое сомнение, что в целевой папке есть собственная работа. Issue подтверждает наличие обсуждения поведения Retry в одной версии, а не утверждение, что GitHub Desktop «портит» удалённые данные.
Материал подготовлен редакцией VOne с применением ИИ для дерева retry; семантика clone и журналов сверена по Git и GitHub Docs, а issue не использован как техническое доказательство.
Источники и проверка
- GitHub Docs — cloning in GitHub Desktop проверено 2026-08-10
- Git documentation — git-clone проверено 2026-08-10
- GitHub Docs — GitHub Desktop log files проверено 2026-08-10
Информация актуальна на дату публикации. Правила сервисов, приложений и сетей могут меняться.