Github improved

By Johan Sundström Last update May 29, 2011 — Installed 347 times.


Script Summary: Lists branch and tag names for tagged commits and branch heads, and adds an "unfold all changesets" button on Commit History pages at github, which lets you browse the source changes without leaving the page. (Click a commit header again to re-fold it.)

Version: 1.7

Since this is github, you can of course fork this script and add features yourself.

ChangeLog

2011-05-28: v1.7

  • Commits that are tagged or branch heads now get little labels on the right (cyan for branches, yellow for tags).
  • Plain-numeric tags (or with always identical non-numeric parts, like "rel-2011-05-28") also get a little link to the diff from the preceding such tag. Here's Greasemonkey 0.9.5, for example.
  • If you click a commit author's avatar, you get a little filter panel on top, listing how many commits in the view each author wrote. Click those to toggle their visibility in the page (good for filtering out your own commit, the build system, et cetera). Click an author avatar in the page to revert to the unfiltered view again.
  • Click "(committer)" to show those side by side in a more compact view.
  • Regression bug fix: do not load all diffs when hitting the up arrow (I removed the shifted hotkeys causing this).
  • There is now a Chrome extension as well as an Opera extension which may make it more convenient for you to get updates to this script.

I rarely have the time and patience to walk it through release control as the one Opera or Mozilla employ, but the Chrome one will likely get more frequent updates than the script does here. The github version is always guaranteed to have all the fixes to all the issues I've worked out solutions for.

2010-10-04

  • Change time format from "n days ago" to weekday + HH:MM:SS ISO time by clicking them (github time in parenthesis).
  • Regression bug fix: do not load commented changesets twice.

2010-09-23

  • Changeset diff-stats work more like github's own.
  • Click now also selects a changeset.
  • Added keyboard navigation help to the help page.
  • fold and describe work more like the other keyboard commands if a commit is selected.
  • Keyboard selection now works with navigation across AutoPagerize unpaginated pages.
  • Hovering parent commits hilight the parent, if in the page, and click scrolls to and select it instead of loading a new page.
  • Click any date header to toggle separators between adjacent commits that are direct descendants of eachother.

2010-09-05

  • Inline comments in unfolded commits don't wreck things any more.
  • Fixed Firefox+Greasemonkey compatibility for the keyboard shortcuts.
  • Added "change" marker in the commit metadata on the right, showing +lines / -lines in <files touched>.
  • Click "decorate all" (or press "d") to just fetch and decorate all the commits with change markers.
  • Click "(committer)" to toggle a "compact committers" view mode, where committers line up on the right of the view.
  • Show "(…)" markers next to truncated and folded commit messages after the decoration pass.
  • Removed github's forced commit message line wraps, letting the commit message use the entire ~94 characters that fit the view, instead of the ~84 or so the site normally wraps at.

2010-08-29

  • Preload the pause animation, so it doesn't look glitchy the first few unfolds.
  • Prettified its fit over the commit text..

2010-08-22

  • You can click any changeset right away to unfold it; no need to unfold everything any more
  • Dynamic registration of click handler, so if you have automatic unpagination, it should work with folding
  • Pretty Loading... throbbers while fetching commit html to inline
  • Fixed folding and unfolding of image files/changes in changesets
  • Hotkey "f" toggles folding of all commits
  • Prettier "(un)fold all changesets" buttons
  • Adds buttons both above and below commit history
  • Improved code style and docs

2010-05-24

  • Now you can fold and unfold individual files in changesets (by clicking their header)

2010-05-09

  • Initial version