You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
223 lines
8.7 KiB
223 lines
8.7 KiB
Git v1.7.8 Release Notes (draft) |
|
================================ |
|
|
|
Updates since v1.7.7 |
|
-------------------- |
|
|
|
* Some git-svn, git-gui, git-p4 (in contrib) 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". |
|
|
|
* 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". |
|
|
|
* "git daemon" gives more human readble error messages to clients |
|
using ERR packets when appropriate. |
|
|
|
* 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 difftool" can be told to skip launching the tool for a path by |
|
answering 'n' to its prompt. |
|
|
|
* "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 fetch" learned that fetching/cloning from a regular file on the |
|
filesystem is not necessarily a request to unpack a bundle file; the |
|
file could be ".git" with "gitdir: <path>" in it. |
|
|
|
* "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 rebase -i" can be told to use special purpose editor suitable |
|
only for its insn sheet via sequence.editor configuration variable. |
|
|
|
* "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 clone" does not leak an error message to the UI |
|
level unnecessarily anymore. |
|
|
|
* "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" can be told to give custom string at the end of the HTML |
|
HEAD element. |
|
|
|
* "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). |
|
|
|
* "git branch -m/-M" advertised to update RENAME_REF ref in the |
|
commit log message that introduced the feature but not anywhere in |
|
the documentation, and never did update such a ref anyway. This |
|
undocumented misfeature that did not exist has been excised. |
|
(merge b0eab01 jc/maint-remove-renamed-ref 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 fetch --prune" was unsafe when used with refspecs from the |
|
command line. |
|
(merge e8c1e6c cn/fetch-prune 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 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). |
|
|
|
* The logic to filter out forked projects in the project list in |
|
"gitweb" was broken for some time. |
|
(merge 53c632f jm/maint-gitweb-filter-forks-fix later to maint). |
|
|
|
|
|
|
|
--- |
|
exec >/var/tmp/1 |
|
O=v1.7.7.1-453-g0b26d1e |
|
echo O=$(git describe --always master) |
|
git log --first-parent --oneline --reverse ^$O master |
|
echo |
|
git shortlog --no-merges ^$O master
|
|
|