Ramo remoto de check-out usando git svn



svn clone (1)

Layout padrão do Subversion

Crie um clone do git que inclua seu tronco, tags e ramificações do Subversion com

git svn clone http://svn.example.com/project -T trunk -b branches -t tags

A opção --stdlayout é um bom atalho se o seu repositório Subversion usa a estrutura típica:

git svn clone http://svn.example.com/project --stdlayout

Faça o seu repositório git ignorar tudo o que o repositório do subversion faz:

git svn show-ignore >> .git/info/exclude

Agora você deve poder ver todos os ramos do Subversion no lado do git:

git branch -r

Diga o nome do ramo no Subversion é waldo . No lado do git, você correria

git checkout -b waldo-svn remotes/waldo

O sufixo -svn é evitar avisos do formulário

warning: refname 'waldo' is ambiguous.

Para atualizar o git branch waldo-svn , execute

git checkout waldo-svn
git svn rebase

A partir de um checkout apenas de troncos

Para adicionar uma ramificação do Subversion a um clone somente de troncos, modifique o .git/config do seu repositório git para conter

[svn-remote "svn-mybranch"]
        url = http://svn.example.com/project/branches/mybranch
        fetch = :refs/remotes/mybranch

Você precisará desenvolver o hábito de correr

git svn fetch --fetch-all

para atualizar tudo o que o git svn acha que são controles remotos separados. Neste ponto, você pode criar e rastrear ramificações como acima. Por exemplo, para criar uma ramificação git que corresponda a mybranch, execute

git checkout -b mybranch-svn remotes/mybranch

Para os ramos a partir dos quais você pretende git svn dcommit , mantenha suas histórias lineares!

Outras informações

Você também pode estar interessado em ler uma resposta para uma pergunta relacionada .

https://code.i-harness.com

Eu verifiquei um repositório svn usando o git svn. Agora preciso fazer o checkout de um dos branches e rastreá-lo. Qual é a melhor maneira de fazer isso?





git-svn