Насколько я понимаю, при использовании --mirror
все ссылки копируются как есть. Чтобы смоделировать это поведение с помощью JGit, инициализируйте пустой репозиторий и настройте удаленный репозиторий.
Теперь используйте FetchCommand
для передачи всех ссылок из удаленного репозитория. Удостоверьтесь, что в спецификациях ссылок указаны все соответствующие ссылки, такие как заголовки, теги, заметки и т. Д.
Git git = Git.init().setBare(true).setGitDir(...).call()
git.remoteAdd().setName("origin").setUri(new URIish("URL/to/mirror/source")).call();
git.fetch().setRemote("origin").setRefSpecs("+refs/*:refs/*").call();