| GIT v1.6.3 Release Notes | |
| ======================== | |
| With the next major release, "git push" into a branch that is | |
| currently checked out will be refused by default. You can choose | |
| what should happen upon such a push by setting the configuration | |
| variable receive.denyCurrentBranch in the receiving repository. | |
| To ease the transition plan, the receiving repository of such a | |
| push running this release will issue a big warning when the | |
| configuration variable is missing. Please refer to: | |
| http://git.or.cz/gitwiki/GitFaq#non-bare | |
| http://thread.gmane.org/gmane.comp.version-control.git/107758/focus=108007 | |
| for more details on the reason why this change is needed and the | |
| transition plan. | |
| For a similar reason, "git push $there :$killed" to delete the branch | |
| $killed in a remote repository $there, if $killed branch is the current | |
| branch pointed at by its HEAD, gets a large warning. You can choose what | |
| should happen upon such a push by setting the configuration variable | |
| receive.denyDeleteCurrent in the receiving repository. | |
| When the user does not tell "git push" what to push, it has always | |
| pushed matching refs. For some people it is unexpected, and a new | |
| configuration variable push.default has been introduced to allow | |
| changing a different default behaviour. To advertise the new feature, | |
| a big warning is issued if this is not configured and a git push without | |
| arguments is attempted. | |
| Updates since v1.6.2 | |
| -------------------- | |
| (subsystems) | |
| * various git-svn updates. | |
| * git-gui updates, including an update to Russian translation, and a | |
| fix to an infinite loop when showing an empty diff. | |
| * gitk updates, including an update to Russian translation and improved Windows | |
| support. | |
| (performance) | |
| * many uses of lstat(2) in the codepath for "git checkout" have been | |
| optimized out. | |
| (usability, bells and whistles) | |
| * Boolean configuration variable yes/no can be written as on/off. | |
| * rsync:/path/to/repo can be used to run git over rsync for local | |
| repositories. It may not be useful in practice; meant primarily for | |
| testing. | |
| * http transport learned to prompt and use password when fetching from or | |
| pushing to http://user@host.xz/ URL. | |
| * (msysgit) progress output that is sent over the sideband protocol can | |
| be handled appropriately in Windows console. | |
| * "--pretty=<style>" option to the log family of commands can now be | |
| spelled as "--format=<style>". In addition, --format=%formatstring | |
| is a short-hand for --pretty=tformat:%formatstring. | |
| * "--oneline" is a synonym for "--pretty=oneline --abbrev-commit". | |
| * "--graph" to the "git log" family can draw the commit ancestry graph | |
| in colors. | |
| * If you realize that you botched the patch when you are editing hunks | |
| with the 'edit' action in git-add -i/-p, you can abort the editor to | |
| tell git not to apply it. | |
| * @{-1} is a new way to refer to the last branch you were on introduced in | |
| 1.6.2, but the initial implementation did not teach this to a few | |
| commands. Now the syntax works with "branch -m @{-1} newname". | |
| * git-archive learned --output=<file> option. | |
| * git-archive takes attributes from the tree being archived; strictly | |
| speaking, this is an incompatible behaviour change, but is a good one. | |
| Use --worktree-attributes option to allow it to read attributes from | |
| the work tree as before (deprecated git-tar tree command always reads | |
| attributes from the work tree). | |
| * git-bisect shows not just the number of remaining commits whose goodness | |
| is unknown, but also shows the estimated number of remaining rounds. | |
| * You can give --date=<format> option to git-blame. | |
| * "git-branch -r" shows HEAD symref that points at a remote branch in | |
| interest of each tracked remote repository. | |
| * "git-branch -v -v" is a new way to get list of names for branches and the | |
| "upstream" branch for them. | |
| * git-config learned -e option to open an editor to edit the config file | |
| directly. | |
| * git-clone runs post-checkout hook when run without --no-checkout. | |
| * git-difftool is now part of the officially supported command, primarily | |
| maintained by David Aguilar. | |
| * git-for-each-ref learned a new "upstream" token. | |
| * git-format-patch can be told to use attachment with a new configuration, | |
| format.attach. | |
| * git-format-patch can be told to produce deep or shallow message threads. | |
| * git-format-patch can be told to always add sign-off with a configuration | |
| variable. | |
| * git-format-patch learned format.headers configuration to add extra | |
| header fields to the output. This behaviour is similar to the existing | |
| --add-header=<header> option of the command. | |
| * git-format-patch gives human readable names to the attached files, when | |
| told to send patches as attachments. | |
| * git-grep learned to highlight the found substrings in color. | |
| * git-imap-send learned to work around Thunderbird's inability to easily | |
| disable format=flowed with a new configuration, imap.preformattedHTML. | |
| * git-rebase can be told to rebase the series even if your branch is a | |
| descendant of the commit you are rebasing onto with --force-rebase | |
| option. | |
| * git-rebase can be told to report diffstat with the --stat option. | |
| * Output from git-remote command has been vastly improved. | |
| * "git remote update --prune $remote" updates from the named remote and | |
| then prunes stale tracking branches. | |
| * git-send-email learned --confirm option to review the Cc: list before | |
| sending the messages out. | |
| (developers) | |
| * Test scripts can be run under valgrind. | |
| * Test scripts can be run with installed git. | |
| * Makefile learned 'coverage' option to run the test suites with | |
| coverage tracking enabled. | |
| * Building the manpages with docbook-xsl between 1.69.1 and 1.71.1 now | |
| requires setting DOCBOOK_SUPPRESS_SP to work around a docbook-xsl bug. | |
| This workaround used to be enabled by default, but causes problems | |
| with newer versions of docbook-xsl. In addition, there are a few more | |
| knobs you can tweak to work around issues with various versions of the | |
| docbook-xsl package. See comments in Documentation/Makefile for details. | |
| * Support for building and testing a subset of git on a system without a | |
| working perl has been improved. | |
| Fixes since v1.6.2 | |
| ------------------ | |
| All of the fixes in v1.6.2.X maintenance series are included in this | |
| release, unless otherwise noted. | |
| Here are fixes that this release has, but have not been backported to | |
| v1.6.2.X series. | |
| * "git-apply" rejected a patch that swaps two files (i.e. renames A to B | |
| and B to A at the same time). May need to be backported by cherry | |
| picking d8c81df and then 7fac0ee). | |
| * The initial checkout did not read the attributes from the .gitattribute | |
| file that is being checked out. | |
| * git-gc spent excessive amount of time to decide if an object appears | |
| in a locally existing pack (if needed, backport by merging 69e020a). |