Um repositório SVN pode ser clonado como um repositório desencapado do Git com um comando simples?

3

Eu preciso clonar um repositório SVN como um repositório do Git simples.

No momento, eu consegui isso por:

  1. Clonando o repositório do SVN com git-svn :

    $ git svn clone http://svn.code.sf.net/p/syntaxhighlight/code/
    
  2. Movendo o diretório .git para o local desejado:

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

Mas não acho isso muito útil e não consigo ver nenhuma referência a bare quando eu man git svn . Além disso, se o repositório do SVN tiver sido atualizado, posso executar git svn fetch , mas recebo erros quando tento rebase.

Alguma opção pode fazer o truque?

Idealmente, gostaria de ter uma opção semelhante a git clone --mirror .

Executando o Git 2.1.4

    
por Morgan Courbet 05.10.2016 / 10:28

1 resposta

2

Depois de mover o diretório .git para o local desejado, você deixou de fazer o seguinte:

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

Eu encontrei a seguinte pergunta do Stackoverflow Como para converter um repositório Git normal em um simples? fornecendo a resposta ao seu problema.

Para sua pergunta sobre git svn rebase : não consigo pensar em usar git rebase em um repositório vazio. Eu só uso em um repositório git normal. Então eu acho que o mesmo se aplica para git svn rebase .

git svn fetch funciona em um repositório normal ou nulo porque funciona sem um diretório de check-out.

    
por 05.10.2018 / 13:47

Tags