ti-enxame.com

SVN criar patch a partir do código confirmado?

É possível criar um patch (arquivos diff) para todos os arquivos que foram afetados durante uma confirmação APÓS a confirmação? Esses arquivos teriam o mesmo número de versão e eu preciso do diff de cada arquivo da versão anterior.

66
septerr

Se você souber o número de confirmação, use

svn diff -c N path

Onde N é o número de confirmação e path é o caminho para sua cópia de trabalho.

61
Mikhail Vladimirov

Se você conhece os números de revisão (por exemplo, 123 e 124), pode usar:

svn diff -r123:124 path/to/my_project_folder > ~/my_project_changes_123_124.patch

Consulte também https://stackoverflow.com/a/25283101/112758

45
batigolix

Como alternativa, ao usar o Windows + tortoiseSVN: Vá para o diretório do código fonte, clique com o botão direito do mouse no diretório (para abrir o menu de contexto da tartaruga) e selecione "Mostrar log", selecione as duas revisões (clique com a tecla Ctrl) e clique com o botão direito do mouse e selecione " Mostrar diferenças como diff unificado "no menu de contexto. Uma janela será exibida mostrando as diferenças, que você pode salvar como um patch.

Atualização: mantendo pressionada a tecla Shift, ao clicar em "mostrar diferenças como diff unificado", uma caixa de diálogo é exibida, onde você pode selecionar as opções de diferença (ignorar alterações de eol, ignorar alterações de espaço em branco, ignorar todos os espaços em branco). Isso é útil se, por exemplo, as terminações de linha foram alteradas entre as versões (o arquivo inteiro seria exibido como 'alterado')

39
kalmiya