| Git 1.7.12.1 Release Notes | |
| ========================== | |
| Fixes since v1.7.12 | |
| ------------------- | |
| * "git apply -p0" did not parse pathnames on "diff --git" line | |
| correctly. This caused patches that had pathnames in no other | |
| places to be mistakenly rejected (most notably, binary patch that | |
| does not rename nor change mode). Textual patches, renames or mode | |
| changes have preimage and postimage pathnames in different places | |
| in a form that can be parsed unambiguously and did not suffer from | |
| this problem. | |
| * "git cherry-pick A C B" used to replay changes in A and then B and | |
| then C if these three commits had committer timestamps in that | |
| order, which is not what the user who said "A C B" naturally | |
| expects. | |
| * "git commit --amend" let the user edit the log message and then | |
| died when the human-readable committer name was given | |
| insufficiently by getpwent(3). | |
| * 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. | |
| * "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. | |
| * "git for-each-ref" did not correctly support more than one --sort | |
| option. | |
| * "git log .." errored out saying it is both rev range and a path | |
| when there is no disambiguating "--" is on the command line. | |
| Update the command line parser to interpret ".." as a path in such | |
| a case. | |
| * The "--topo-order", "--date-order" (and the lack of either means | |
| the default order) options to "rev-list" and "log" family of | |
| commands were poorly described in the documentation. | |
| * "git prune" without "-v" used to warn about leftover temporary | |
| files (which is an indication of an earlier aborted operation). | |
| * Pushing to smart HTTP server with recent Git fails without having | |
| the username in the URL to force authentication, if the server is | |
| configured to allow GET anonymously, while requiring authentication | |
| for POST. | |
| * The reflog entries left by "git rebase" and "git rebase -i" were | |
| inconsistent (the interactive one gave an abbreviated object name). | |
| * 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. | |
| * "git show --quiet" ought to be a synonym for "git show -s", but | |
| wasn't. | |
| * "git show --format='%ci'" did not give timestamp correctly for | |
| commits created without human readable name on "committer" line. | |
| * "git send-email" did not unquote encoded words that appear on the | |
| header correctly, and lost "_" from strings. | |
| * 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. | |
| * "gitweb" when used with PATH_INFO failed to notice directories with | |
| SP (and other characters that need URL-style quoting) in them. | |
| * 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. | |
| * 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..." | |
| started to fail. Protect them from such a misconfiguration. | |
| * The attribute system may be asked for a path that itself or its | |
| leading directories no longer exists in the working tree, and it is | |
| fine if we cannot open .gitattribute file in such a case. Failure | |
| to open per-directory .gitattributes with error status other than | |
| ENOENT and ENOTDIR should be diagnosed, but it wasn't. | |
| * After "gitk" showed the contents of a tag, neither "Reread | |
| references" nor "Reload" did not update what is shown as the | |
| contents of it, when the user overwrote the tag with "git tag -f". | |
| * "ciabot" script (in contrib/) has been updated with extensive | |
| documentation. | |
| * "git-jump" script (in contrib/) did not work well when | |
| diff.noprefix or diff.mnemonicprefix is in effect. | |
| * Older parts of the documentation described as if having a regular | |
| file in .git/refs/ hierarchy were the only way to have branches and | |
| tags, which is not true for quite some time. | |
| * A utility shell function test_seq has been added as a replacement | |
| for the 'seq' utility found on some platforms. | |
| * 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. | |
| * We used curl_easy_strerror() without checking version of cURL, | |
| breaking the build for versions before curl 7.12.0. | |
| * Code to work around MacOS X UTF-8 gotcha has been cleaned up. | |
| * Fallback 'getpass' implementation made unportable use of stdio API. | |
| * The "--rebase" option to "git pull" can be abbreviated to "-r", | |
| but we didn't document it. | |
| * It was generally understood that "--long-option"s to many of our | |
| subcommands can be abbreviated to the unique prefix, but it was not | |
| easy to find it described for new readers of the documentation set. | |
| * The synopsis said "checkout [-B branch]" to make it clear the | |
| branch name is a parameter to the option, but the heading for the | |
| option description was "-B::", not "-B branch::", making the | |
| documentation misleading. | |
| Also contains numerous documentation updates. |