| Git v1.8.0 Release Notes |
| ======================== |
| |
| Backward compatibility notes |
| ---------------------------- |
| |
| In the next major release, we will change the behaviour of the "git |
| push" command. When "git push [$there]" does not say what to push, we |
| have used the traditional "matching" semantics (all your branches were |
| sent to the remote as long as there already are branches of the same |
| name over there). We will use the "simple" semantics, that pushes the |
| current branch to the branch with the same name only when the current |
| branch is set to integrate with that remote branch. There is a user |
| preference configuration variable "push.default" to change this, and |
| "git push" will warn about the upcoming change until you set this |
| variable. |
| |
| |
| Updates since v1.7.12 |
| --------------------- |
| |
| UI, Workflows & Features |
| |
| * A credential helper for Win32 to allow access to the keychain of |
| the logged-in user has been added. |
| |
| * "git cherry-pick" learned the "--allow-empty-message" option to |
| allow it to replay a commit without any log message. |
| |
| * "git daemon" learned the "--access-hook" option to allow an |
| external command to decline service based on the client address, |
| repository path, etc. |
| |
| * "git difftool --dir-diff" learned to use symbolic links to prepare |
| temporary copy of the working tree when available. |
| |
| * "git grep" learned to use a non-standard pattern type by default if |
| a configuration variable tells it to. |
| |
| Foreign Interface |
| |
| * "git svn" has been updated to work with SVN 1.7. |
| |
| Performance, Internal Implementation, etc. (please report possible regressions) |
| |
| * The "check-docs" build target has been updated and greatly |
| simplified. |
| |
| * The documentation in the TeXinfo format was using indented output |
| for materials meant to be examples that are better typeset in |
| monospace. |
| |
| * Compatibility wrapper to learn the maximum number of file |
| descriptors we can open around sysconf(_SC_OPEN_MAX) and |
| getrlimit(RLIMIT_NO_FILE) has been introduced for portability. |
| |
| * Compatibility wrapper around some mkdir(2) implementations that |
| reject parameter with trailing slash has been introduced. |
| |
| Also contains minor documentation updates and code clean-ups. |
| |
| |
| Fixes since v1.7.12 |
| ------------------- |
| |
| Unless otherwise noted, all the fixes since v1.7.12 in the |
| maintenance track are contained in this release (see release notes |
| to them for details). |
| |
| * The exit status code from "git config" was way overspecified while |
| being incorrect. The implementation has been updated to give the |
| documented status for a case that was documented, and introduce a |
| new code for "all other errors". |
| (merge 9409c7a jc/maint-config-exit-status later to maint). |
| |
| * "git foo" errored out with "Not a directory" when the user had a |
| non-directory on $PATH, and worse yet it masked an alias "foo" from |
| running. (merge a785508 jc/maint-sane-execvp-notdir later to |
| maint). |
| |
| * The interactive prompt "git send-email" gives was error prone. It |
| asked "What e-mail address do you want to use?" with the address it |
| guessed (correctly) the user would want to use in its prompt, |
| tempting the user to say "y". But the response was taken as "No, |
| please use 'y' as the e-mail address instead", which is most |
| certainly not what the user meant. |
| (merge 51bbccf jc/send-email-reconfirm later to maint). |
| |
| * "git stash apply/pop" did not trigger "rerere" upon conflicts |
| unlike other mergy operations. |
| (merge 743bf6d ph/stash-rerere later to maint). |
| |
| * "git submodule update -f" did not update paths in the working tree |
| that has local changes. |
| (merge 01d4721 sz/submodule-force-update later to maint). |
| |
| * We used curl_easy_strerror() without checking version of cURL, |
| breaking the build for versions before curl 7.12.0. |
| (merge 4246b0b js/no-curl-easy-strerror-on-old-curl later to maint). |
| |
| * Code to work around MacOS X UTF-8 gotcha has been cleaned up. |
| (merge 9a27f96 rr/precompose-utf8-cleanup later to maint). |
| |
| * Documentation for the configuration file format had a confusing |
| example. |
| (merge d1e1fe7 mh/maint-config-doc-proxy-command later to maint). |
| |
| * "git submodule <cmd> path" did not error out when the path to the |
| submodule was misspelt. |
| (merge be9d0a3 hv/submodule-path-unmatch later to maint). |
| |
| * Some capabilities were asked by fetch-pack even when upload-pack |
| did not advertise that they are available. fetch-pack has been |
| fixed not to do so. |
| |
| * The reflog entries left by "git rebase" and "git rebase -i" were |
| inconsistent (the interactive one gave an abbreviated object name). |
| (merge 1af221e mg/rebase-i-onto-reflog-in-full later to maint). |
| |
| * When the user exports a non-default IFS without HT, scripts that |
| rely on being able to parse "ls-files -s | while read a b c..." |
| start to fail. Protect them from such a misconfiguration. |
| (merge 785063e jc/maint-protect-sh-from-ifs later to maint). |
| |
| * "git prune" without "-v" used to warn about leftover temporary |
| files (which is an indication of an earlier aborted operation). |
| (merge 90b29cb bc/prune-info later to maint). |
| |
| * When "git push" triggered the automatic gc on the receiving end, a |
| message from "git prune" that said it was removing cruft leaked to |
| the standard output, breaking the communication protocol. |
| (merge 4b7f2fa bc/receive-pack-stdout-protection later to maint). |
| |
| * "git diff" had a confusion between taking data from a path in the |
| working tree and taking data from an object that happens to have |
| name 0{40} recorded in a tree. |
| (merge c479d14 jk/maint-null-in-trees later to maint). |
| |
| * The output from "git diff -B" for a file that ends with an |
| incomplete line did not put "\ No newline..." on a line of its own. |
| |
| * "git send-email" did not unquote encoded words that appear on the |
| header correctly, and lost "_" from strings. |
| (merge b622d4d tr/maint-send-email-2047 later to maint). |
| |
| * When the user gives an argument that can be taken as both a |
| revision name and a pathname without disambiguating with "--", we |
| used to give a help message "Use '--' to separate". The message |
| has been clarified to show where that '--' goes on the command |
| line. |
| (merge 4d4b573 mm/die-with-dashdash-help later to maint). |
| |
| * "gitweb" when used with PATH_INFO failed to notice directories with |
| SP (and other characters that need URL-style quoting) in them. |
| (merge cacfc09 js/gitweb-path-info-unquote later to maint). |