Est-il possible de faire git diff
et d'enregistrer la sortie dans un fichier avec la coloration en quelque sorte?
Je sais comment faire git diff > filename.rtf
- ce qui enregistre dans un fichier, mais j'aimerais conserver la coloration.
Est-il possible de faire git diff
et d'enregistrer la sortie dans un fichier avec la coloration en quelque sorte?
Je sais comment faire git diff > filename.rtf
- ce qui enregistre dans un fichier, mais j'aimerais conserver la coloration.
Réponses:
Essayer:
git diff --color > foo.txt
Puis émission ultérieure:
cat foo.txt
Ou:
less -R foo.txt
cat
le fichier de la ligne de commande. (Comment pourriez-vous vous attendre à ce que les couleurs soient préservées?)
Language --> D --> Diff
.) Si vous n'aimez pas les couleurs par défaut, changez-les dans Settings --> Style Configurator --> Diff
. Pour copier coller avec des couleurs, vous pouvez utiliser un plugin (par exemple NppExport
) qui permet d'exporter / copier en RTF ou HTML.
Ouvrez le fichier diff de sortie dans Sublime Text 2 . Il montre les couleurs différentes.
diff.txt
pour moi, même avec "Diff" détecté automatiquement dans le coin inférieur droit.
Pour développer la réponse de @ Gabe.
Vous pouvez diriger la sortie vers un script bash de convertisseur ansi vers html et diriger cette sortie vers un fichier html:
git diff --color|./ansi2html.sh > changes.html
bien sûr, le html peut être consulté par n'importe quel navigateur afin que la sortie puisse être lue dans Windows, etc.
Le code ansi2html est ici: http://www.pixelbeat.org/scripts/ansi2html.sh
brew install gawk
. Vous aurez également besoin brew install gnu-sed
.
Fichiers de couleurs Vim contenant magnifiquement git diff.
J'ai trouvé une réponse ici: Sortie couleur d'une commande git spécifique .
Vous pouvez passer -c color.ui=always
à n'importe quelle git
commande et elle continuera à colorier lors de la redirection. Par exemple:git -c color.ui=always status > file
git remote add -f b path/to/repo_b.git
git remote update
git diff master remotes/b/master > foo.txt
Les différences extraites dans les fichiers '* .txt' sont facilement lues par SublimeText2 sans qu'il soit nécessaire de les définir (via Affichage -> Syntaxe -> Diff).
git remote rm remotes/b/master
pour réinitialiser la branche à son état d'origine.
pour permettre à tout texte de terminal colorisé ... git diff ou tout autre ... d'être visible depuis un navigateur
sudo apt-get install aha # https://github.com/theZiz/aha
installer en aha
utilisant ci-dessus puis émettre
git diff --color mysourcefile | aha > ~/cool_colorized.html
firefox ~/cool_colorized.html
Vous pouvez télécharger sur GitHub et fournir un lien vers le commit concerné.