Можно ли клонировать SVN-репозиторий как Git-репозиторий с помощью простой команды?

Мне нужно клонировать SVN-репозиторий как голый репозиторий Git.

На данный момент я выполнил это:

  1. Клонирование репо SVN с git-svn:

    $ git svn clone http://svn.code.sf.net/p/syntaxhighlight/code/
    
  2. Перемещение .git каталог в нужное место:

    $ mv code/.git /srv/git/syntaxhighlight
    

Но я не нахожу это действительно удобным, и я не вижу никакой ссылки на bare когда я man git svn, Кроме того, если репозиторий SVN был обновлен, я могу запустить git svn fetch, но я получаю ошибки, когда я пытаюсь ребазировать.

Может ли какой-нибудь вариант сделать свое дело?

В идеале хотелось бы вариант похожий на git clone --mirror,

Запуск Git 2.1.4

1 ответ

После перемещения .git Перейдите в нужное место, которое вы пропустили, выполнив следующее:

$ rm -rf code    # you might want to get rid of the check-out
$ cd /srv/git/syntaxhighlight
$ git config --bool core.bare true

Я нашел следующий вопрос Stackoverflow Как преобразовать обычный Git-репозиторий в пустой? предоставляя ответ на вашу проблему.

На ваш вопрос о git svn rebase: Я не могу думать об использовании git rebase на голом хранилище. Я использую его только в обычном git-хранилище. Так что я думаю, что то же самое относится и к git svn rebase,

git svn fetch работает в обычном или пустом хранилище, потому что работает без каталога извлечения.

Другие вопросы по тегам