Pergunta

O que é a melhor maneira de resolver um conflito ao fazer um git svn rebase, eo ramo git você está em se torna "(no-branch)"?

Foi útil?

Solução

Você pode usar git mergetool para ver e editar os conflitos na forma usual. Quando tiver a certeza os conflitos são resolvidos Do git rebase --continue para continuar o rebase, ou se você não quiser incluir essa revisão fazer git rebase --skip

Outras dicas

Ao fazer um git svn rebase, se você tem conflitos de mesclagem aqui estão algumas coisas para lembrar:

1) Se alguma coisa ruim acontece durante a execução de um rebase você vai acabar em um galho (no-branch).

2) Se você executar git status, você verá um arquivo .dotest em seu diretório de trabalho. Isto é seguro ignorar.

3) Se você deseja abortar o comando a seguir o uso rebase. 1

git rebase --abort

4) Se você tem um conflito de mesclagem:

  1. manualmente editar os arquivos para resolver os conflitos
  2. Fase de quaisquer alterações com git add [file]
  3. Continuar o rebase com git rebase --continue 2
    • Se git pergunta: "você se esqueceu de chamar git add", então as edições transformou o conflito em uma mudança no-op 3 . Continue com git rebase --skip

Você pode ter que repetir este processo até que o rebase está completa. A qualquer momento você pode git rebase --abort para cancelar e abandonar o rebase.


1:. Não há opção --abort para git svn rebase

2:. Não há opção --continue para git svn rebase

3: Isto é muito estranho, mas os arquivos estão em um estado onde git acha que eles são o mesmo depois que o patch particular. A solução é "pular" que remendo sobre a alteração de base.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top