Я пытаюсь клонировать большой репозиторий из git с использованием библиотеки JGIT. Размер файла составляет около 70 МБ. Но я получаю исключение транспорта: Packfile обрезан. Но тот же код, когда я пытался клонировать репозиторий 3 МБ, он работал нормально.
Мой фрагмент кода ниже. Поскольку я перепробовал все возможные варианты, здесь вы можете найти справку о том, чего нам не хватает
- Git.cloneRepository ()
Git.open ()
Git git = Git.cloneRepository ()
.setURI («любой репозиторий размером 70 МБ. Так как это компания, которую я здесь не даю»)
.setDirectory (новый файл («Расположение диска C»))
.setNoCheckout (ложь)
.setCredentialsProvider (новый UsernamePasswordCredentialsProvider («имя пользователя», «пароль»))
.call ();
Он должен клонировать репо в указанном каталоге с соответствующей папкой .git, в которой заголовки и источник должны быть обновлены с помощью снимка ветви / мастера, который мы клонируем. Но трассировка стека ошибок я получаю
Caused by: org.eclipse.jgit.errors.TransportException: Packfile is truncated.
at org.eclipse.jgit.transport.BasePackFetchConnection.doFetch(BasePackFetchConnection.java:400)
at org.eclipse.jgit.transport.TransportHttp$SmartHttpFetchConnection.doFetch(TransportHttp.java:1084)
at org.eclipse.jgit.transport.BasePackFetchConnection.fetch(BasePackFetchConnection.java:323)
at org.eclipse.jgit.transport.BasePackFetchConnection.fetch(BasePackFetchConnection.java:314)
at org.eclipse.jgit.transport.FetchProcess.fetchObj`ects(FetchProcess.java:265)
at org.eclipse.jgit.transport.FetchProcess.executeImp(FetchProcess.java:163)
at org.eclipse.jgit.transport.FetchProcess.execute(FetchProcess.java:124)
at org.eclipse.jgit.transport.Transport.fetch(Transport.java:1271)
at org.eclipse.jgit.api.FetchCommand.call(FetchCommand.java:243)
... 62 more