| 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: |
| |
| https://archive.kernel.org/oldwiki/git.wiki.kernel.org/index.php/GitFaq.html#non-bare |
| https://lore.kernel.org/git/7vbptlsuyv.fsf@gitster.siamese.dyndns.org/ |
| |
| 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). |