From: Junio C Hamano Date: Fri, 21 Oct 2011 18:08:10 +0000 (-0700) Subject: Sync with maint X-Git-Tag: v1.7.8-rc0~32 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=8963314c77af9a4eda5dcbdbab3d4001af83ad81;p=git.git Sync with maint --- 8963314c77af9a4eda5dcbdbab3d4001af83ad81 diff --cc Documentation/RelNotes/1.7.8.txt index c8eb0eb5a,000000000..886dfbfaa mode 100644,000000..100644 --- a/Documentation/RelNotes/1.7.8.txt +++ b/Documentation/RelNotes/1.7.8.txt @@@ -1,212 -1,0 +1,188 @@@ +Git v1.7.8 Release Notes (draft) +================================ + +Updates since v1.7.7 +-------------------- + + * Some git-svn, git-gui and msysgit updates. + + * Updates to bash completion scripts. + + * The build procedure has been taught to take advantage of computed + dependency automatically when the complier supports it. + + * The date parser now accepts timezone designators that lack minutes + part and also has a colon between "hh:mm". + - * On some BSD systems, adding +s bit on directories is detrimental - (it is not necessary on BSD to begin with). The installation - procedure has been updated to take this into account. - + * The contents of the /etc/mailname file, if exists, is used as the + default value of the hostname part of the committer/author e-mail. + + * "git am" learned how to read from patches generated by Hg. + + * "git archive" talking with a remote repository can report errors + from the remote side in a more informative way. + + * "git branch" learned an explicit --list option to ask for branches + listed, optionally with a glob matching pattern to limit its output. + + * "git check-attr" learned "--cached" option to look at .gitattributes + files from the index, not from the working tree. + + * Variants of "git cherry-pick" and "git revert" that take multiple + commits learned to "--continue". + + * Errors at the network layer is logged by "git daemon". + + * "git diff" learned "--minimal" option to spend extra cycles to come + up with a minimal patch output. + + * "git diff" learned "--function-context" option to show the whole + function as context that was affected by a change. + + * "git fetch" learned to honor transfer.fsckobjects configuration to + validate the objects that were received from the other end, just like + "git receive-pack" (the receiving end of "git push") does. + + * "git fetch" makes sure that the set of objects it received from the + other end actually completes the history before updating the refs. + "git receive-pack" (the receiving end of "git push") learned to do the + same. + + * "git for-each-ref" learned "%(contents:subject)", "%(contents:body)" + and "%(contents:signature)". The last one is useful for signed tags. + + * "git grep" used to incorrectly pay attention to .gitignore files + scattered in the directory it was working in even when "--no-index" + option was used. It no longer does this. The "--exclude-standard" + option needs to be given to explicitly activate the ignore + mechanism. + + * "git grep" learned "--untracked" option, where given patterns are + searched in untracked (but not ignored) files as well as tracked + files in the working tree, so that matches in new but not yet + added files do not get missed. + + * The recursive merge backend no longer looks for meaningless + existing merges in submodules unless in the outermost merge. + + * "git log" and friends learned "--children" option. + + * "git ls-remote" learned to respond to "-h"(elp) requests. + + * "git merge" learned the "--edit" option to allow users to edit the + merge commit log message. + + * "git send-email" learned to respond to "-h"(elp) requests. + + * "git send-email" allows the value given to sendemail.aliasfile to begin + with "~/" to refer to the $HOME directory. + + * "git send-email" forces use of Authen::SASL::Perl to work around + issues between Authen::SASL::Cyrus and AUTH PLAIN/LOGIN. + + * "git stash" learned "--include-untracked" option to stash away + untracked/ignored cruft from the working tree. + + * "git submodule update" learned to honor "none" as the value for + submodule..update to specify that the named submodule should + not be checked out by default. + + * When populating a new submodule directory with "git submodule init", + the $GIT_DIR metainformation directory for submodules is created inside + $GIT_DIR/modules// directory of the superproject and referenced + via the gitfile mechanism. This is to make it possible to switch + between commits in the superproject that has and does not have the + submodule in the tree without re-cloning. + + * "mediawiki" remote helper can interact with (surprise!) MediaWiki + with "git fetch" & "git push". + + * "gitweb" leaked unescaped control characters from syntax hiliter + outputs. + + * "gitweb" now has its own manual pages. + + +Also contains other documentation updates and minor code cleanups. + + +Fixes since v1.7.7 +------------------ + +Unless otherwise noted, all fixes in the 1.7.7.X maintenance track are +included in this release. + + * We used to drop error messages from libcurl on certain kinds of + errors. + (merge be22d92eac8 jn/maint-http-error-message later to maint). + + * Error report from smart HTTP transport, when the connection was + broken in the middle of a transfer, showed a useless message on + a corrupt packet. + (merge 6cdf022 sp/smart-http-failure later to maint). + + * HTTP transport did not use pushurl correctly, and also did not tell + what host it is trying to authenticate with when asking for + credentials. + (merge deba493 jk/http-auth later to maint). + + * Adding many refs to the local repository in one go (e.g. "git fetch" + that fetches many tags) and looking up a ref by name in a repository + with too many refs were unnecessarily slow. + (merge 17d68a54d jp/get-ref-dir-unsorted later to maint). + - * After incorrectly written third-party tools store a tag object in - HEAD, git diagnosed it as a repository corruption and refused to - proceed in order to avoid spreading the damage. We now gracefully - recover from such a situation by pretending as if the commit that - is pointed at by the tag were in HEAD. - (merge baf18fc nd/maint-autofix-tag-in-head later to maint). - + * Report from "git commit" on untracked files was confused under + core.ignorecase option. + (merge 2548183b jk/name-hash-dirent later to maint). + + * The attribute mechanism did not use case insensitive match when + core.ignorecase was set. + (merge 6eba621 bc/attr-ignore-case later to maint). + - * "git apply --whitespace=error" did not bother to report the exact - line number in the patch that introduced new blank lines at the end - of the file. - (merge 8557263 jc/apply-blank-at-eof-fix later to maint). - - * "git apply --index" did not check corrupted patch. - (merge 2c93286 jm/maint-apply-detects-corrupt-patch-header later to maint). - + * "git bisect" did not notice when it failed to update the working tree + to the next commit to be tested. + (merge 1acf11717 js/bisect-no-checkout later to maint). + - * "git checkout $tree $directory/" resurrected paths locally removed or - modified only in the working tree in $directory/ that did not appear - in $directory of the given $tree. They should have been kept intact. - (merge 0a1283b jc/checkout-from-tree-keep-local-changes later to maint). - + * "git config --bool --get-regexp" failed to separate the variable name + and its value "true" when the variable is defined without "= true". + (merge 880e3cc mm/maint-config-explicit-bool-display later to maint). + + * "git remote rename $a $b" were not careful to match the remote name + against $a (i.e. source side of the remote nickname). + (merge b52d00aed mz/remote-rename later to maint). + + * "git diff --[num]stat" used to use the number of lines of context + different from the default, potentially giving different results from + "git diff | diffstat" and confusing the users. + (merge f01cae918 jc/maint-diffstat-numstat-context later to maint). + + * "git merge" did not understand ":/" as a way to name a commit. + + * "git mergetool" learned to use its arguments as pathspec, not a path to + the file that may not even have any conflict. + (merge 6d9990a jm/mergetool-pathspec later to maint). + + * "git pull" and "git rebase" did not work well even when GIT_WORK_TREE is + set correctly with GIT_DIR if the current directory is outside the working + tree. + (merge 035b5bf jk/pull-rebase-with-work-tree later to maint). + + " "git push" on the receiving end used to call post-receive and post-update + hooks for attempted removal of non-existing refs. + (merge 160b81ed ph/push-to-delete-nothing later to maint). + + * "git send-email" did not honor the configured hostname when restarting + the HELO/EHLO exchange after switching TLS on. + (merge 155b940 md/smtp-tls-hello-again later to maint). + + * "gitweb" used to produce a non-working link while showing the contents + of a blob, when JavaScript actions are enabled. + (merge 2b07ff3ff ps/gitweb-js-with-lineno later to maint). + +--- +exec >/var/tmp/1 +O=v1.7.7-418-g40d6987 +echo O=$(git describe --always master) +git log --first-parent --oneline --reverse ^$O master +echo +git shortlog --no-merges ^$O master