GIT v1.5.4 Release Notes ======================== Updates since v1.5.3 -------------------- * Comes with much improved gitk. * "progress display" from many commands are a lot nicer to the eye. Transfer commands show throughput data. * git-reset is now built-in and its output can be squelched with -q. * git-send-email can optionally talk over ssmtp and use SMTP-AUTH. * git-rebase learned --whitespace option. * git-remote knows --mirror mode. * git-merge can call the "post-merge" hook. * git-pack-objects can optionally run deltification with multiple threads. * git-archive can optionally substitute keywords in files marked with export-subst attribute. * git-for-each-ref learned %(xxxdate:) syntax to show the various date fields in different formats. * git-gc --auto is a low-impact way to automatically run a variant of git-repack that does not lose unreferenced objects (read: safer than the usual one) after the user accumulates too many loose objects. * You need to explicitly set clean.requireForce to true to allow git-clean to do any damage now (the configuration variable used to default to false). * git-push has been rewritten in C. * git-push learned --dry-run option to show what would happen if a push is run. * git-remote learned "rm" subcommand. * git-rebase --interactive mode can now work on detached HEAD. * git-cvsserver can be run via git-shell. * git-am and git-rebase are far less verbose. * git-pull learned to pass --[no-]ff option to underlying git-merge. * Various Perforce importer updates. * git-lost-found was deprecated in favor of git-fsck's --lost-found option. * git-svnimport was removed in favor of git-svn. * git-bisect learned "skip" action to mark untestable commits. * git-format-patch learned "format.numbered" configuration variable to automatically turn --numbered option on when more than one commits are formatted. * git-ls-files learned "--exclude-standard" to use the canned set of exclude files. * git-rebase now detaches head during its operation, so after a successful "git rebase" operation, the reflog entry branch@{1} for the current branch points at the commit before the rebase was started. * "git-tag -a -f existing" begins the editor session using the existing annotation message. * "git cvsexportcommit" learned -w option to specify and switch to the CVS working directory. * Output processing for '--pretty=format:' has been optimized. * Rename detection diff family, while detecting exact matches, has been greatly optimized. * Example update and post-receive hooks have been improved. * In addition there are quite a few internal clean-ups. Notably - many fork/exec have been replaced with run-command API, brought from the msysgit effort. - introduction and more use of the option parser API. - enhancement and more use of the strbuf API. Fixes since v1.5.3 ------------------ All of the fixes in v1.5.3 maintenance series are included in this release, unless otherwise noted. * git-svn talking with the SVN over http will correctly quote branch and project names. -- exec >/var/tmp/1 O=v1.5.3.5-736-geb9d2b9 echo O=`git describe refs/heads/master` git shortlog --no-merges $O..refs/heads/master ^refs/heads/maint