diff-so-fancy
s'efforce de rendre vos différences lisibles par l'homme plutôt que par la machine. Cela contribue à améliorer la qualité du code et à détecter les défauts plus rapidement.
Vanilla git diff
vs git
et diff-so-fancy
Copiez simplement le script diff-so-fancy
de la dernière version dans votre $PATH
et vous avez terminé. Alternativement, pour tester les fonctionnalités de développement, vous pouvez cloner ce référentiel, puis placer le script diff-so-fancy
(le lien symbolique fonctionnera) dans votre $PATH
. Le répertoire lib/
devra être conservé par rapport au script principal.
Si vous utilisez un framework ZSH comme zgenom ou oh-my-zsh, reportez-vous à la prise en charge du plugin Zsh pour diff-so-fancy pour obtenir des instructions d'installation détaillées.
diff-so-fancy
est également disponible dans le registre NPM, Brew, en tant que package sur Nix, Fedora, dans le dépôt supplémentaire Arch et en tant que ppa:aos pour Debian/Ubuntu Linux.
Les problèmes liés à l'empaquetage (« l'installation ne fonctionne pas », « la version est obsolète », etc.) doivent être adressés aux propres référentiels/outil de suivi des problèmes de ces packages, le cas échéant. Les problèmes liés à l'empaquetage (« l'installation ne fonctionne pas », « la version est obsolète », etc.) doivent être adressés aux référentiels/outil de suivi des problèmes de ces packages, le cas échéant.
Remarque : les utilisateurs Windows devront peut-être installer MinGW ou le sous-système Windows pour Linux.
Configurez git pour utiliser diff-so-fancy
pour toutes les sorties diff :
git config --global core.pager " diff-so-fancy | less --tabs=4 -RF "
git config --global interactive.diffFilter " diff-so-fancy --patch "
Les couleurs Git par défaut ne sont pas optimales. Les couleurs utilisées pour la capture d'écran ci-dessus étaient :
git config --global color.ui true
git config --global color.diff-highlight.oldNormal " red bold "
git config --global color.diff-highlight.oldHighlight " red bold 52 "
git config --global color.diff-highlight.newNormal " green bold "
git config --global color.diff-highlight.newHighlight " green bold 22 "
git config --global color.diff.meta " 11 "
git config --global color.diff.frag " magenta bold "
git config --global color.diff.func " 146 bold "
git config --global color.diff.commit " yellow bold "
git config --global color.diff.old " red bold "
git config --global color.diff.new " green bold "
git config --global color.diff.whitespace " red reverse "
Utilisez -u
avec diff
pour une sortie unifiée et dirigez la sortie vers diff-so-fancy
:
diff -u file_a file_b | diff-so-fancy
Il prend également en charge le mode récursif de diff avec -r
ou --recursive
comme premier argument
diff -r -u folder_a folder_b | diff-so-fancy
diff --recursive -u folder_a folder_b | diff-so-fancy
Le premier bloc d'une ligne vide doit-il être coloré. (Par défaut : vrai)
git config --bool --global diff-so-fancy.markEmptyLines false
Simplifiez les morceaux d'en-tête git dans un format plus lisible par l'homme. (Par défaut : vrai)
git config --bool --global diff-so-fancy.changeHunkIndicators false
Le +
ou -
embêtant au début de la ligne devrait-il être supprimé. (Par défaut : vrai)
git config --bool --global diff-so-fancy.stripLeadingSymbols false
Par défaut, le séparateur de l'en-tête du fichier utilise des caractères de dessin au trait Unicode. Si cela provoque des erreurs de sortie sur votre terminal, définissez-le sur false
pour utiliser des caractères ASCII à la place. (Par défaut : vrai)
git config --bool --global diff-so-fancy.useUnicodeRuler false
Par défaut, le séparateur de l'en-tête du fichier s'étend sur toute la largeur du terminal. Utilisez ce paramètre pour définir manuellement la largeur de l’en-tête du fichier.
git config --global diff-so-fancy.rulerWidth 80
Personne | Rôle |
---|---|
@scottchiefbaker | Chef de projet |
@OJFord | Tri des bogues |
@GénieTim | Corrections de Travis OSX |
@AOS | Packageur Debian |
@Stevemao/@Paul irlandais | Équipe de publication NPM |
Les demandes de tirage sont les bienvenues et devraient cibler la branche next
. Nous recherchons également des commentaires ou des idées sur la façon de rendre diff-so-fancy
encore plus sophistiqué .
MIT