Major changes to gitolite, master branch only, most recent first, no dates but
the tags can help you position stuff approximately
[NYD = not yet documented due to lack of time...]

  - v2.1

  - 'symbolic-ref' ADC replaces and obsoletes 'set-head'

  - BIG CHANGE: easy-install ('from-client' method) is now HISTORY from the
    docs and code.  Upgrade to one of the other methods.  Look for a section
    on "upgrading from from-client method to non-root method" in the docs

  - nice new "password access" mode for people who can't grok ssh keys

  - new program gl-dryrun, to be run in any admin repo clone, to check syntax
    errors etc before you actually push

  - very complex mirroring setups now have a helper script to setup

  - behanw contributed a better converter for gitosis

  - the mirroring stuff is just out of this world now...

  - new 'subconf' feature to explicitly delegate; the implicit one is now
    legacy, but is backward compatibly handled so you don't need to fix your
    config

  - delegation now allows includes in fragments -- no idea why we first
    disallowed this

  - fix accumulation and sequencing of git config lines; very important for
    mirroring (coming up)

  - v2.0.3

  - gl-dont-panic replaced by more generic gl-admin-push

  - v2.0.2

  - self-service key management

  - (from-client install method is now loosely deprecated)

  - su-setperms and su-getperms, like su-expand -- allow an admin to get/set
    perms on behalf of some user

  - 'delete-branch' ADC -- this is the most practical way to allow someone to
    delete a branch that they themselves created; see commit message for
    89b68bf

  - v2.0.1

  - "hooklets" allow you to have any number of site-local 'update hook'
    scripts play nicely with gitolite

  - the "include" statement can now use globs -- makes some types of setups
    sooooo easy!

  - mirroring finally tested properly after v2

  - 'hub' adc (pull requests etc)

  - s3backup ADC contributed by Bremner

  - warn() and die() are now logged

  - v2.0

  - gl-pre-git hook added

  - 'hub' adc added

  - v2.0rc2

*** V1.5.9.1 -- IMPORTANT SECURITY FIX; PLEASE UPGRADE IF YOU'RE USING
    SOMETHING OLDER THAN THIS ONE

  - supercool new 'git' adc; so cool it's disabled by default

  - '-prune' added to find commands; makes a big diff if REPO_BASE is NFS/CIFS
    mounted

  - first python ADC contributed -- 'perms' makes setperms etc easier to do

  - 'set-head' ADC added

  - v2.0rc1; major refactor

  - v1.5.9

  - Nokia MeeGo team contributed ldap scripts

  - large configs should now be twice as fast (except when gl-perms exists)
    due to my finding and eliminating a wasted parse_acl

  - major change: split the config file when in big-config mode
    (includes a data format change)

  - GL_ALL_READ_ALL to make things much, (MUCH!) faster for sites where all
    can read all repos (like Fedora)

  - rc file revamp -- was getting too big and unwieldy; now the documentation
    is in a new file instead of inline

  - allow gitolite to be used even when users have real IDs (thus $HOME is not
    valid to find the rc file); allow /etc/gitolite/gitolite.rc then

  - BIG one for adc writers -- full blown access checks (ref level) can be
    done from an ADC now (though it has to be in perl, not shell)!

  - allow full access checks from perl (shell can only do level 1 checks);
    useful in hooks or ADCs

  - v1.5.8

  - Jeff from KDE contributed the watch ADC
  - allow disabling gitolite (write access only) to take backups
  - document how to move gitolite from one server to another

  - custom permissions categories (default being READERS and WRITERS) for
    setperms (thanks to Jeff from KDE for the idea/need)

  - v1.5.7

  - "help" adc can allow site local help text to be shown
  - "who-pushed" adc to find out who pushed a given commit
  - rmrepo adc replaced by lock/unlock/rm and trash/list-trash/restore
    families of commands

  - v1.5.6

  - new method for passing usergroup info (minor backward compat breakage);
    see commit message and doc/big-config.mkd for more on this

  - added "sudo" (adc)
  - added "gl-reflog" (adc) to get a fake reflog from the server!
  - added support for a post-repo-create hook called "gl-post-init"

  - (BIG ONE!) SMART HTTP SUPPORT!

  - @all can now include gitweb/daemon also (default, not include)
  - allow @groups in setperms
  - gitweb/daemon now work within setperms

  - log elapsed time (optional)

  - more than one wildcard may match a repo, plus it can also be matched by a
    normal repo line

  - test suite has lots of new tests for the below
  - (big change) all combinations of wild repos and big configs, including
    daemon/gitweb/git-config settings, should work now!

  - v1.5.5

  - mirroring support

  - setup_authkeys is now separate; can be called from outside also; useful
    for people who want to maintain ssh keys via LDAP or something, and not
    within gitolite

  - (two months too late for towel day) gl-dont-panic!
    [replaces the old "gl-emergency-addkey" program.  It does more (including
    recovering from a botched push, not just lost keys), is cleaner, and works
    for all install methods]

  - document on how to create a mob branch

  - info command now takes a parameter to limit output; this is mandatory if
    GL_BIG_CONFIG is on

  - v1.5.4

  - new RC variables: GL_NO_CREATE_REPOS and GL_NO_SETUP_AUTHKEYS (inspired by
    the specific needs that Fedora have, but made as generic as possible)
  - separating push branch rights from create branch rights changed to use the
    same mechanism as the (older) mechanism for separating rewind from delete

  - v1.5.3

  - log file format changed; minor backward compat breakage if you've been
    doing any automated log processing
  - some small but important doc updates
  - adc "fork" now much faster and more space-efficient (uses git clone -l)

  - v1.5.2

  - added test suite

  - v1.5.1

  - disallow creation of new refs if you want (while allowing push of the
    same)

  - adc "able" command added to contrib
  - easy-install now takes a host-nickname parameter for convenience in
    installing more than one gitolite server
  - major doc revamp; contrib/autotoc added to make docs look nicer
  - eliminate the need to run gl-setup on data version change, thus hopefully
    obsoleting the upgrade note for v1.5 (just below).

  - v1.5 -- IMPORTANT UPGRADE NOTES below

    Upgrading to v1.5 from any version prior to v1.5 requires an extra step
    for people who installed gitolite using the "system install / user setup"
    method described in doc/0-INSTALL.mkd.  For such installations, after the
    administrator has upgraded gitolite system-wide, each "gitolite host" user
    must run `gl-setup` once (this time without any arguments).

  - "deny" rules should now work even in "big-config" due to previous change
  - proper rule sequencing (required major format change)

  - allow usergroup info to be passed in from outside, say via LDAP; see
    doc/big-config.mkd for details
  - (new) big-config is now part of mainline (old one had bitrotted); see
    doc/big-config.mkd for details

  - gl-system-install: help people simulate an RPM/DEB install by just running
    that commmand with appropriate arguments; see doc/0-INSTALL.mkd

  - admin-defined commands; see doc/admin-defined-commands.mkd

  - v1.4.2 (prep for major refactor on rights queries
  - v1.4.1 (security fix)

  - REFUSE TO RUN ON SERVER GIT < 1.6.2 (do NOT upgrade gitolite to or beyond
    this point if you are unable to upgrade git itself to at least 1.6.2)

  - "D" must be combined with RW or RW+ (warning: minor backward compat breakage)

  - v1.4

  - recurse through keydir for pubkeys
  - bypass update hook if GL_BYPASS_UPDATE_HOOK is available in ENV
  - new server-side program "gl-tool", subcommand "shell-add"
  - new "D" permission (makes RW+ no longer imply "D" if used)
  - @all for repos is now a true @all
  - allow setperms to specify @all
  - post-update hook and gl-setup should be dash compat now
  - workaround for a Data::Dumper crash; see 412a691
  - both hooks chain to "<hookname>.secondary" now

  - new style personal branches (see 2456cc1 for advantages)

  - v1.3

  - easier to move repos into gitolite
  - pattern for expand is no longer anchored

  - v1.2

  - distro packaging support -- easy to install systemwide now

  - v1.1

  - contrib directory added
  - expand now lists non-wildcard repos also
  - refs also have groups now
  - allow admins to get "info" for other users

  - wildrepos merged
  - getdesc and setdesc for wildrepos
  - htpasswd subcommand
  - access control for rsync

  - v1.0

  - sshkeys-lint program added, doc/6 revamped
  - @SHELL in config changed to $SHELL_USERS in rc
  - "include" mechanism
  - delegation now uses NAME/ instead of branches
  - PATH/ changed to NAME/

  - @SHELL in config
  - use of @all for repos also (see doc for caveat)
  - config entries for repos

  - deny rules (no more "rebel" branch!)
  - PATH/
  - specify gitweb owner

  - v0.95
  - easy install can run from msysgit also
  - v0.90
  - allow admin defined hooks
  - specify gitweb desc
  - v0.85
  - emergency addkey program
  - v0.80