Domanda

  

Possibile duplicato:
   Perché Mercurial pensa che i miei file SQL siano binari?

Di recente ho iniziato a utilizzare Mercurial e quando ho ripristinato uno dei miei file .SQL, Mercurial ha eseguito un confronto binario. Ciò ovviamente limita la visibilità delle modifiche apportate, in quanto non vi sono differenze.

Esiste un'opzione per impostare i tipi di file per fare un confronto di stringhe?

Sto usando Tortioise Hg 0.8.1 con Mercurial 1.3.1.

È stato utile?

Soluzione

Mercurial in realtà non gestisce il testo e i file binari in modo completamente diverso rispetto alla memoria effettiva. Tuttavia cerca di indovinare "mostrando visivamente che questa differenza è significativa" quando viene richiesto di mostrare un diff a un utente con 'hg diff', 'hg log -p' o quando si visualizza un changeset nell'interfaccia web. Quando sta provando a fare il " dovrei mostrarlo come se fosse testo " decisione che il test applicato è " Esiste un byte NUL (0x00) entro i primi 1000 byte di un file.

Quindi il tuo file non viene trattato in modo diverso tranne nel modo in cui viene visualizzato all'output dell'utente, ma se riesci a trovare un byte NUL lì dentro puoi probabilmente fermarlo anche tu.

In alternativa, l'estensione extdiff può essere usata per avere il controllo totale della visualizzazione dei diff.

Altri suggerimenti

Non conosco la parte grafica di TortoiseHg, ma se usi la riga di comando, allora il flag --text su hg diff dovrebbe fare il trucco : fa sì che Mercurial tratti tutti i file come testo.

Dovresti provare ad aggiungere queste righe a ~ / .hgrc :

[diff]
git=1

Il formato git diff funziona con file binari.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top