Some people will say that is a diff, others would argue that purely listing the changed files is not a diff.
hg log -v -r e64f09773235
Grep loving sysadmins might also use:
hg diff -c e64f09773235 | fgrep 2012
But now I want to peek backwards in time to see what the file wsgi.py looked like before and after:
hg cat wsgi/wsgi.py -r 1
hg cat wsgi/wsgi.py -r 0
hg diff is probably an easier way of seeing differences between files,
but I use
hg cathere to illustrate its use.
Notes and repository for the examples:Note that, at no point, did I alter the files on the local filesystem.
And the state of my local mercurial repository was never altered.
Essentially I am querying the history to get what I want.
Had I issued
hg update 0then I would have reverted my local state back to the first commit. Then I could directly inspect the file wsgi/wsgi.py
However the point of having a log is to support exactly this sort of querying without necessarily changing local state.
Based on what you find, you may then choose to change local state, but in the first instance you have querying tools that are non-disruptive, which is nice :)
Want to follow along and experiment?
Cloning - use either of the command below:
hg clone https://bitbucket.org/wrightsolutions/base-bottle84
hg clone ssh://firstname.lastname@example.org/wrightsolutions/base-bottle84