Wednesday, 21 February 2018

Svn diff no binário opção


Não é possível exibir: arquivo marcado como um tipo binário Eu postar isso para o grupo de usuários do Subversion, mas isso é parcialmente em resposta ao TortoiseSVN Dev thread quotApply patch sugestões de 4252009. De svn. haxx. setsvnarchive-2009-040197.shtml Eu vejo Stefan Kng escreveu: gt Outra coisa a lembrar: svn 1.7 terá um novo formato de patch que gt inclui mudanças binárias e renamesmoves. Ele também fornecerá uma nova API gt para criar e aplicar esses arquivos de correção. Isso significa que o difftatch gt recurso do TMerge terá que ser reescrito de qualquer maneira, por isso estou inclinando gt para aguardar a implementar essas mudanças agora, mas esperar pelo menos gt até que trocamos o tronco TSVN para o tronco svn. Usando svn 1.7.1, eu tentei criar um arquivo de patch para uma mudança de arquivo binário e obtive este: Como eu olhar através das notas de lançamento do Subversion 1.7 eu não vejo nada sobre o manuseio de arquivos binários. Eu também não poderia encontrar qualquer outra menção deste recurso na web. Será que a declaração Stefans vir a ser incorreta, ou estamos faltando alguma coisa sobre a criação de patches para arquivos binários Pode ser feito com a linha de comando Tortoise vs a linha de comando do Subversion Eu realmente tentei usar svn diff - force. Isso gerou um arquivo de patch. Salvei uma cópia do arquivo modificado, revertei o arquivo binário, usei o patch svn para aplicar a alteração e, em seguida, comparei o resultado corrigido com o binário originalmente modificado. O resultado neste ponto era um arquivo corrompido. Por isso, parece que a diferença não é a resposta. Eu tentei usar Tortoise para fazer isso, e obteve o mesmo erro acima. (Isso ocorre mesmo se selecionar a opção para usar o formato git.) Não há nenhuma opção quotforcequot que eu possa ver no Tortoise. Estou faltando alguma coisa, ou esse recurso ainda não implementado em svn ou Tortoise Se alguém sabe de qualquer utilitário wrapper de qualquer tipo que lidar com binários, eu gostaria de saber que também. Por favor pense no meio ambiente antes de imprimir este e-mail. O conteúdo desta mensagem de e-mail (incluindo quaisquer anexos) é confidencial e destina-se a ser transmitido para o uso do destinatário a quem é dirigido apenas. Se receber esta transmissão por engano, notifique imediatamente o remetente e exclua a mensagem do seu sistema. Qualquer distribuição, reprodução ou utilização desta mensagem por outra pessoa que não o destinatário não é autorizada e pode ser ilegal. Para se desinscrever desta discussão, envie um e-mail para users-unsubscribeattortoisesvn46 tigris. org. Recebeu em 2017-10-28 18:19:57 CESTThis mostra um arquivo recém-adicionado (vazio), um arquivo binário modificado e um arquivo renomeado (ou seja, copiado e excluído) com modificações: Por padrão, svnlook diff tratará copiado Arquivos muito parecido com qualquer outro arquivo adicionado, exibindo em sua totalidade o conteúdo do novo arquivo e simplesmente usando um rótulo diferente para desenhar a distinção copyadd. No entanto, você pode usar a opção --diff-copy-from para fazer com que svnlook diff considere um arquivo copiado como merecedor de menção somente se ele difere do arquivo do qual foi copiado e para realmente descrever essas diferenças. Use a opção --no-diff-deleted para silenciar a saída em relação aos arquivos excluídos. Observe que em cada um dos exemplos anteriores, quando um arquivo tem uma propriedade não textual svn: mime-type, as diferenças não são explicitamente mostradas. Descrição Exibe as diferenças entre dois caminhos. Você pode usar svn diff das seguintes maneiras: Use apenas svn diff para exibir modificações locais em uma cópia de trabalho. Exiba as alterações feitas ao TARGET s como elas são vistas na REV entre duas revisões. TARGET s pode ser todos os caminhos de cópia de trabalho ou todos os URLs. Se TARGET s estiverem trabalhando caminhos de cópia, N padrão será BASE e M para a cópia de trabalho se TARGET s forem URL s, N deve ser especificado e M padrão para HEAD. A opção - c M é equivalente a - r N: M onde N M-1. Utilizando - c-M faz-se o inverso: - r M: N em que N M-1. Exibir as diferenças entre OLD-TGT como foi visto em OLDREV e NEW-TGT como foi visto em NEWREV. PATH s, se for dado, são relativos a OLD-TGT e NEW-TGT e restringem a saída a diferenças para esses caminhos. OLD-TGT e NEW-TGT podem ser caminhos de cópia de trabalho ou URLREV. NEW-TGT padrão para OLD-TGT se não for especificado. - r N torna OLDREV padrão para N - r N: M torna OLDREV padrão para N e NEWREV padrão para M. Svn diff OLD-URLOLDREV NOVO-URLNEWREV é abreviatura para svn diff --oldWORD-URLOLDREV --newNEW-URLNEWREV. Svn diff - r N: M URL é abreviatura para svn diff - r N: M --oldURL --newURL. Svn diff - r N: M URL1N URL2M é abreviação para svn diff - r N: M --oldURL1 --newURL2. Se TARGET for um URL, então revs N e M podem ser dadas através da opção --revision (-r) ou usando a notação como descrito anteriormente. Se TARGET for um caminho de cópia de trabalho, o comportamento padrão (quando nenhuma opção --revision (-r) for fornecida) é exibir as diferenças entre as cópias de base e de trabalho do TARGET. Se uma opção --revision (-r) for especificada neste cenário, no entanto, significa: O servidor compara TARGETN e TARGETM. O cliente compara o TARGETN com a cópia de trabalho. Se a sintaxe alternativa for utilizada, o servidor compara URL1 e URL2 nas revisões N e M. respectivamente. Se N ou M for omitido, um valor de HEAD é assumido. Por padrão, o svn diff ignora a ascendência dos arquivos e compara apenas o conteúdo dos dois arquivos que estão sendo comparados. Se você usar --notice-ancestry. A ascendência dos caminhos em questão será levada em consideração ao comparar revisões (ou seja, se você executar svn diff em dois arquivos com conteúdo idêntico, mas ancestralidade diferente, você verá todo o conteúdo do arquivo como tendo sido removido e adicionado novamente).

No comments:

Post a Comment