Pergunta

Como comparo um ramo com outro? Quero comparar uma filial com a última revisão no Trunk.

Foi útil?

Solução

Você pode começar com:

svn diff http://REPOS/trunk http://REPOS/branches/B

(Onde http://REPOS é o seu caminho de repositório, incluindo os pais de trunk e branches.)

Isso imprimirá uma grande quantidade de texto, incluindo todas as alterações textuais, mas não as alterações binárias, exceto para dizer onde e quando ocorreram.

Outras dicas

Se você está apenas procurando um nível alto de quais arquivos são diferentes e não deseja ver todo o conteúdo, use:

svn diff ^/trunk ^/branches/dev --summarize

(Isso compara o tronco e o ramo dev)

Normalmente, verifico os dois ramos (ou o ramo e o porta -malas) nos diretórios. Em seguida, uso uma ferramenta gráfica como Kompare ou similar (dependendo de suas preferências, sistema operacional, ...). Isso é realmente útil para mim quando preciso realizar mesclas complexas.

Como a falta de reputação não me permite adicionar isso como um comentário contra uma resposta existente, estou tendo que adicioná -la como separada.

Uma opção útil para svn diff para mim era --ignore-properties. Meus dois ramos acabaram em termos de código idênticos, mas com diferentes histórias de mesclagem.

Usando --ignore-properties Permitiram -me provar a mim mesmo que esse era o caso, sem percorrer a grande quantidade de mudanças de propriedade "SVN: Mergeinfo".

Aqui está a documentação para o svn diff comando.

Obrigado pela informação pessoal, eu adicionaria algo para melhorar a legibilidade dos resultados diff. TXT

Você pode usar: Findstr "Index:" C: PATH SVN_DIFF_FILENAME.TXT> SVN_DIFF_FILE_LIST.TXT

Isso trará uma lista legível de arquivos que têm diferenças.

Aqui está um Post de Murray Cumming que descreve o processo não óbvio:

  • Descubra os números de revisão: você precisa conhecer os números de revisão das versões mais recentes em cada uma das filiais. Parece que o SVN Log é a única maneira de fazer isso.
  • CD em um dos diretórios da filial, como o tronco.
  • Forneça os números de revisão ao comando SVN Diff: svn diff -r123:145

Difver entre duas revisões de um ramo:

svn diff -r rLATEST:rOLD

Usar svn log Para obter as diferentes revisões. O uso pode limitar o número de revisões no log usando svn log -l 5. Somente as últimas 5 revisões serão mostradas.

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