* Stefan Beller <sbeller@xxxxxxxxxx> [2017-03-22 12:43:41 -0700]:
On Wed, Mar 22, 2017 at 12:23 PM, <matthew@xxxxxxxxxx> wrote:
Good day,
I have a question with respect to how git generates "pretty" (ie: human
readable) unified diffs. It's to my understanding that git uses its own
(simplified/minimized) fork of libxdiff, simply referred to as "xdiff"
[1].
correct.
Which tool/library is used to take the xdiff output and generate
the human-readable equivalent that is rendered to the console?
Git itself. Have a look at diff.c (it's only 5k lines of code ;)
Maybe start with fn_out_consume which is a callback (for xdiff)
that is responsible for pretty printing the output, i.e. transforming the
output of xdiff according to Gits configuration.
I have a
program that I'm maintaining that currently tracks changes to a couple
of "sandboxed" files, and I wanted to add a simple console UI that
periodically shows the changes to the files over time and/or dumps the
"pretty diff" to syslog.
over time
So you could use cron for that?
"pretty diff" to syslog.
So you want to modify the "pretty diff"?
Maybe that can be archived by a custom format
(see the git *log* man page) and doesn't require hacking.
Thanks,
Stefan
Thank you Stefan. This provides me with everything I need.
Cheers!
--
Matthew Giassa
e: matthew@xxxxxxxxxx