Code

Sync with maint
authorJunio C Hamano <gitster@pobox.com>
Fri, 21 Oct 2011 18:08:10 +0000 (11:08 -0700)
committerJunio C Hamano <gitster@pobox.com>
Fri, 21 Oct 2011 18:24:34 +0000 (11:24 -0700)
1  2 
Documentation/RelNotes/1.7.8.txt

index c8eb0eb5abe0be3751b63b25f822744ed9a7a5f1,0000000000000000000000000000000000000000..886dfbfaa5c66e03c1fb03271251780dc10f0450
mode 100644,000000..100644
--- /dev/null
@@@ -1,212 -1,0 +1,188 @@@
-  * 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.
 +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".
 +
-  * 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).
 + * 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.<name>.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/<name>/ 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).
 +
-  * "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).
 + * 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 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 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 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 ":/<pattern>" 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