| 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. |