

GitHub - so-fancy/diff-so-fancy: Good-lookin' diffs. Actually… nah… The...
source link: https://github.com/so-fancy/diff-so-fancy
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

README.md
diff-so-fancy
diff-so-fancy
strives to make your diffs human readable instead of machine readable. This helps improve code quality and helps you spot defects faster.
Screenshot
Vanilla git diff
vs git
and diff-so-fancy
Install
Installation is as simple as cloning this repo and then putting the diff-so-fancy
script in to your $PATH
. The lib/
directory will need to be kept relative to the core script.
diff-so-fancy
is also available from NPM, Nix, brew, and as a package on Arch and Debian Linux.
Note: Windows users may need to install MinGW or the Windows subsystem for Linux.
Usage
Configure git to use diff-so-fancy
for all diff output:
git config --global core.pager "diff-so-fancy | less --tabs=4 -RFX"
Improved colors for the highlighted bits
The default Git colors are not optimal. The colors used for the screenshot above were:
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.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"
Options
markEmptyLines
Should the first block of an empty line be colored. (Default: true)
git config --bool --global diff-so-fancy.markEmptyLines false
changeHunkIndicators
Simplify git header chunks to a more human readable format. (Default: true)
git config --bool --global diff-so-fancy.changeHunkIndicators false
stripLeadingSymbols
Should the pesky +
or -
at line-start be removed. (Default: true)
git config --bool --global diff-so-fancy.stripLeadingSymbols false
useUnicodeRuler
By default, the separator for the file header uses Unicode line-drawing characters. If this is causing output errors on your terminal, set this to false
to use ASCII characters instead. (Default: true)
git config --bool --global diff-so-fancy.useUnicodeRuler false
rulerWidth
By default, the separator for the file header spans the full width of the terminal. Use this setting to set the width of the file header manually.
git config --global diff-so-fancy.rulerWidth 47 # git log's commit header width
The diff-so-fancy team
Person | Role |
---|---|
@scottchiefbaker | Project lead |
@OJFord | Bug triage |
@GenieTim | Travis OSX fixes |
@AOS | Debian packager |
@Stevemao/@Paul Irish | NPM release team |
Contributing
Pull requests are quite welcome, and should target the next
branch. We are also looking for any feedback or ideas on how to make diff-so-fancy
even fancier.
Other documentation
Alternatives
License
Recommend
-
67
What's New in PHP 7.3 in 30 Seconds in Diffs 2 min Thu, Aug 16, 2018...
-
62
People who have worked with Phabricator using a ‘stacked diff’ workflow generally love it and seek it wherever they next go. People who have never used it and only...
-
9
December 17, 2020 Engineering Commits are snapshots, not diffs G...
-
6
Day 33: pairing is magic and beautiful git diffs • rc-2020 • a silly Rails login bug (or: pairing is magic) On Wednesday morning suddenly I wasn’t able...
-
8
Using Diffs in Vim2021-10-24Nvim232 words 2 mins read times read
-
5
Getting colored diffs out of SVN (Subversion)October 16, 2009 · 1 min read · Edit on Gi...
-
9
Published October 26, 2020 #packagemangers, #npm,
-
7
Extracting Diffs from Git with PythonMay 6, 2016 · 2 min · Benjamin BengfortOne of the first steps to performing analysis of Git repositories is extracting the changes over time, e.g. the Git log. This seems like it s...
-
6
Lawmakers push Google to direct abortion seekers to the resources they're looking for By Jules Wang Published 3 hours ago
-
4
Why This New GameFi Token is the Only Hope for Enjin Coin (ENJ) Investors Looking for Recovery
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK