Here is 0.99.8. GIT has been doing everything I personally wanted it to do since mid 0.99.7, and now it has almost everything I want it to contain, except for a couple of minor points. I feel that we are ready to finish the last mile for 1.0. Many thanks to everybody who contributed the comments, eyeballs, and code.
Done in 0.99.8 ==============
New Features, Commands, and Enhancements ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* 'git pull' now uses 'git-merge' instead of 'git-resolve', so you can specify alternative merge strategy to use on its command line.
* 'git pull -s recursive' has been taught about renaming merges, which may deal with HPA's klibc vs klibc-kbuild situation better.
* Symbolic refs -- instead of using symlinks to express .git/HEAD, you can have a regular file that stores a single line 'ref: refs/heads/master' in it.
git-update-ref is the preferred way to write into .git/HEAD, not "echo >.git/HEAD". git-symbolic-ref is the preferred way to check which underlying ref a symbolic ref .git/HEAD refers to, not "readlink .git/HEAD".
* A couple of new diff options (-l<num> and --name-status).
* Commit walker over http acquired more SSL options.
* 'git clone' checks out the working tree by default.
Fixes ~~~~~
* Removed unused commands (diff-helper, rev-tree, and export).
* Platforms with only Python 2.3 installed can use recursive merge strategy.
* Octopus documented.
* Merge is more careful noticing potentially ambiguous situation.
* Git pull does not blindly do Octopus when Pull: lines in remotes file specifies more than one remote branches.
* Commit walker got safer to use after interrupted downloads.
* Commit walker over http can resume partial downloads.
* More portability fixes for BSD and Solaris.