Fossil Tips And Usage Hints
  1. Click on nodes of any timeline graph to see diffs between the two selected versions.
  1. Add the "--tk" option to "fossil diff" commands to get a pop-up window containing a complete side-by-side diff. (NB: The pop-up window is run as a separate Tcl/Tk process, so you will need to have Tcl/Tk installed on your machine for this to work. Visit to for a quick download of Tcl/Tk if you do not already have it on your system.)
  1. The "fossil clean -x" command is a great alternative to "make clean". You can use "fossil clean -f" as a slightly safer alternative if the "ignore-glob" setting is not set. WARNING: make sure you did a "fossil add" for all source-files you plan to commit, otherwise those files will be deleted without warning.
  1. Use "fossil all changes" to look for any uncommitted edits in any of your Fossil projects. Use "fossil all pull" on your laptop prior to going off network (for example, on a long plane ride) to make sure you have all the latest content locally. Then run "fossil all push" when you get back online to upload your changes.
  1. To see an entire timeline, type "all" into the "Max:" entry box.
  1. You can manually add a "c=CHECKIN" query parameter to the timeline URL to get a snapshot of what was going on about the time of some check-in. The "CHECKIN" can be any valid check-in or version name, including tags, branch names, and dates. For example, to see what was going on in the Fossil repository on 2008-01-01, visit
  1. Further to the previous two hints, there are lots of query parameters that you can add to timeline pages. The available query parameters are tersely documented here.
  1. You can run "fossil test-diff --tk $file1 $file2" to get a pop-up window with side-by-side diffs of two files, even if neither of the two files is part of any Fossil repository. Note that this command is "test-diff", not "diff".
  1. On web pages showing the content of a file (for example you can manually add a query parameter of the form "ln=FROM,TO" to the URL that will cause the range of lines indicated to be highlighted. This is useful in pointing out a few lines of code using a hyperlink in an email or text message. Example:,30. Adding the "ln" query parameter without any argument simply turns on line numbers. This feature only works right with files with a mimetype of text/plain, of course.
  1. When editing documentation to be checked in as managed files, you can preview what the documentation will look like by using the special "ckout" branch name in the "doc" URL while running "fossil ui". See the embedded documentation for details.