diff options
Diffstat (limited to 'Documentation/RelNotes')
-rw-r--r-- | Documentation/RelNotes/1.7.6.5.txt | 26 | ||||
-rw-r--r-- | Documentation/RelNotes/1.7.7.1.txt | 21 | ||||
-rw-r--r-- | Documentation/RelNotes/1.7.7.2.txt | 44 | ||||
-rw-r--r-- | Documentation/RelNotes/1.7.7.3.txt | 19 | ||||
-rw-r--r-- | Documentation/RelNotes/1.7.7.4.txt | 14 | ||||
-rw-r--r-- | Documentation/RelNotes/1.7.7.5.txt | 14 | ||||
-rw-r--r-- | Documentation/RelNotes/1.7.8.1.txt | 17 | ||||
-rw-r--r-- | Documentation/RelNotes/1.7.8.txt | 127 | ||||
-rw-r--r-- | Documentation/RelNotes/1.7.9.txt | 160 |
9 files changed, 363 insertions, 79 deletions
diff --git a/Documentation/RelNotes/1.7.6.5.txt b/Documentation/RelNotes/1.7.6.5.txt new file mode 100644 index 0000000000..6713132a9e --- /dev/null +++ b/Documentation/RelNotes/1.7.6.5.txt @@ -0,0 +1,26 @@ +Git v1.7.6.5 Release Notes +========================== + +Fixes since v1.7.6.4 +-------------------- + + * The date parser did not accept timezone designators that lack minutes + part and also has a colon between "hh:mm". + + * After fetching from a remote that has very long refname, the reporting + output could have corrupted by overrunning a static buffer. + + * "git mergetool" did not use its arguments as pathspec, but as a path to + the file that may not even have any conflict. + + * "git name-rev --all" tried to name all _objects_, naturally failing to + describe many blobs and trees, instead of showing only commits as + advertised in its documentation. + + * "git remote rename $a $b" were not careful to match the remote name + against $a (i.e. source side of the remote nickname). + + * "gitweb" used to produce a non-working link while showing the contents + of a blob, when JavaScript actions are enabled. + +Also contains minor fixes and documentation updates. diff --git a/Documentation/RelNotes/1.7.7.1.txt b/Documentation/RelNotes/1.7.7.1.txt index 02d7c02a00..ac9b838e25 100644 --- a/Documentation/RelNotes/1.7.7.1.txt +++ b/Documentation/RelNotes/1.7.7.1.txt @@ -4,6 +4,27 @@ Git v1.7.7.1 Release Notes Fixes since v1.7.7 ------------------ + * On some BSD systems, adding +s bit on directories is detrimental + (it is not necessary on BSD to begin with). "git init --shared" + has been updated to take this into account without extra makefile + settings on platforms the Makefile knows about. + + * 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. + + * "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. + + * "git apply --index" did not check corrupted patch. + + * "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. + * "git diff $tree $path" used to apply the pathspec at the output stage, reading the whole tree, wasting resources. diff --git a/Documentation/RelNotes/1.7.7.2.txt b/Documentation/RelNotes/1.7.7.2.txt new file mode 100644 index 0000000000..e6bbef2f01 --- /dev/null +++ b/Documentation/RelNotes/1.7.7.2.txt @@ -0,0 +1,44 @@ +Git v1.7.7.2 Release Notes +========================== + +Fixes since v1.7.7.1 +-------------------- + + * We used to drop error messages from libcurl on certain kinds of + errors. + + * 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. + + * "git fetch --prune" was unsafe when used with refspecs from the + command line. + + * The attribute mechanism did not use case insensitive match when + core.ignorecase was set. + + * "git bisect" did not notice when it failed to update the working tree + to the next commit to be tested. + + * "git config --bool --get-regexp" failed to separate the variable name + and its value "true" when the variable is defined without "= true". + + * "git remote rename $a $b" were not careful to match the remote name + against $a (i.e. source side of the remote nickname). + + * "git mergetool" did not use its arguments as pathspec, but as a path to + the file that may not even have any conflict. + + * "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. + + * "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. + + * "git send-email" did not honor the configured hostname when restarting + the HELO/EHLO exchange after switching TLS on. + + * "gitweb" used to produce a non-working link while showing the contents + of a blob, when JavaScript actions are enabled. diff --git a/Documentation/RelNotes/1.7.7.3.txt b/Documentation/RelNotes/1.7.7.3.txt new file mode 100644 index 0000000000..09301f0957 --- /dev/null +++ b/Documentation/RelNotes/1.7.7.3.txt @@ -0,0 +1,19 @@ +Git v1.7.7.3 Release Notes +========================== + +Fixes since v1.7.7.2 +-------------------- + + * Adjust the "quick-install-doc" procedures as preformatted + html/manpage are no longer in the source repository. + + * The logic to optimize the locality of the data in a pack introduced in + 1.7.7 was grossly inefficient. + + * The logic to filter out forked projects in the project list in + "gitweb" was broken for some time. + + * "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. diff --git a/Documentation/RelNotes/1.7.7.4.txt b/Documentation/RelNotes/1.7.7.4.txt new file mode 100644 index 0000000000..e5234485e7 --- /dev/null +++ b/Documentation/RelNotes/1.7.7.4.txt @@ -0,0 +1,14 @@ +Git v1.7.7.4 Release Notes +========================== + +Fixes since v1.7.7.3 +-------------------- + + * A few header dependencies were missing from the Makefile. + + * Some newer parts of the code used C99 __VA_ARGS__ while we still + try to cater to older compilers. + + * "git name-rev --all" tried to name all _objects_, naturally failing to + describe many blobs and trees, instead of showing only commits as + advertised in its documentation. diff --git a/Documentation/RelNotes/1.7.7.5.txt b/Documentation/RelNotes/1.7.7.5.txt new file mode 100644 index 0000000000..7b0931987b --- /dev/null +++ b/Documentation/RelNotes/1.7.7.5.txt @@ -0,0 +1,14 @@ +Git v1.7.7.5 Release Notes +========================== + +Fixes since v1.7.7.4 +-------------------- + + * After fetching from a remote that has very long refname, the reporting + output could have corrupted by overrunning a static buffer. + + * "git checkout" and "git merge" treated in-tree .gitignore and exclude + file in $GIT_DIR/info/ directory inconsistently when deciding which + untracked files are ignored and expendable. + +Also contains minor fixes and documentation updates. diff --git a/Documentation/RelNotes/1.7.8.1.txt b/Documentation/RelNotes/1.7.8.1.txt new file mode 100644 index 0000000000..0e8bd9f5ee --- /dev/null +++ b/Documentation/RelNotes/1.7.8.1.txt @@ -0,0 +1,17 @@ +Git v1.7.8.1 Release Notes +========================== + +Fixes since v1.7.8.1 +-------------------- + + * In some codepaths (notably, checkout and merge), the ignore patterns + recorded in $GIT_DIR/info/exclude were not honored. They now are. + + * After fetching from a remote that has very long refname, the reporting + output could have corrupted by overrunning a static buffer. + + * "git checkout" and "git merge" treated in-tree .gitignore and exclude + file in $GIT_DIR/info/ directory inconsistently when deciding which + untracked files are ignored and expendable. + +Also contains minor fixes and documentation updates. diff --git a/Documentation/RelNotes/1.7.8.txt b/Documentation/RelNotes/1.7.8.txt index 0576c36f8a..b4d90bba0f 100644 --- a/Documentation/RelNotes/1.7.8.txt +++ b/Documentation/RelNotes/1.7.8.txt @@ -1,10 +1,10 @@ -Git v1.7.8 Release Notes (draft) -================================ +Git v1.7.8 Release Notes +======================== Updates since v1.7.7 -------------------- - * Some git-svn and git-gui updates. + * Some git-svn, git-gui, git-p4 (in contrib) and msysgit updates. * Updates to bash completion scripts. @@ -14,10 +14,6 @@ Updates since v1.7.7 * 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. @@ -33,13 +29,22 @@ Updates since v1.7.7 files from the index, not from the working tree. * Variants of "git cherry-pick" and "git revert" that take multiple - commits learned to "--continue". + commits learned to "--continue" and "--abort". + + * "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. @@ -49,6 +54,10 @@ Updates since v1.7.7 "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. @@ -63,8 +72,22 @@ Updates since v1.7.7 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. + * "mediawiki" remote helper can interact with (surprise!) MediaWiki + with "git fetch" & "git push". + + * "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 @@ -76,6 +99,9 @@ Updates since v1.7.7 * "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. @@ -87,12 +113,14 @@ Updates since v1.7.7 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. @@ -103,90 +131,31 @@ 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 blame" was aborted if started from an uncommitted content and + the path had the textconv filter in effect. + (merge 8518088 ss/blame-textconv-fake-working-tree 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 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). + (merge 395c7356 jk/name-hash-dirent 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). - * "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-368-g9638384 -echo O=$(git describe --always master) -git log --first-parent --oneline --reverse ^$O master -echo -git shortlog --no-merges ^$O master + * Help text for "git remote set-url" and "git remote set-branches" + were misspelled. + (merge c49904e fc/remote-seturl-usage-fix later to maint). + (merge 656cdf0 jc/remote-setbranches-usage-fix later to maint). diff --git a/Documentation/RelNotes/1.7.9.txt b/Documentation/RelNotes/1.7.9.txt new file mode 100644 index 0000000000..70ff060231 --- /dev/null +++ b/Documentation/RelNotes/1.7.9.txt @@ -0,0 +1,160 @@ +Git v1.7.9 Release Notes (draft) +======================== + +Updates since v1.7.8 +-------------------- + + * gitk updates accumulated since early 2011. + + * git-gui updated to 0.16.0. + + * git-p4 (in contrib/) updates. + + * i18n effort is going forward and Git uses localized messages if + available. + + * Porcelain commands like "git reset" did not distinguish deletions + and type-changes from ordinary modification, and reported them with + the same 'M' moniker. They now use 'D' (for deletion) and 'T' (for + type-change) to match "git status -s" and "git diff --name-status". + + * The code to handle username/password for HTTP transaction used in + "git push" & "git fetch" learned to talk "credential API" to + external programs to cache or store them, to allow integration with + platform native keychain mechanisms. + + * "git commit" and "git reset" re-learned the optimization to prime + the cache-tree information in the index, which makes it faster to + write a tree object out after the index entries are updated. + + * "git add" learned to stream large files directly into a packfile + instead of writing them into individual loose object files. + + * "git branch -m <current branch> HEAD" is an obvious no-op and is + now allowed. + + * "git checkout -B <current branch> <elsewhere>" is a more intuitive + way to spell "git reset --keep <elsewhere>". + + * "git checkout" and "git merge" learned "--no-overwrite-ignore" option + to tell Git that untracked and ignored files are not expendable. + + * "git commit --amend" learned "--no-edit" option to say that the + user is amending the tree being recorded, without updating the + commit log message. + + * fsck and prune are relatively lengthy operations that still go + silent while making the end-user wait. They learned to give progress + output like other slow operations. + + * The set of built-in function-header patterns for various languages + knows MATLAB. + + * "git pull" can be used to fetch and merge an annotated/signed tag, + instead of the tip of a topic branch. The GPG signature from the + signed tag is recorded in the resulting merge commit for later + auditing. + + * "git branch --edit-description" can be used to add descriptive text + to explain what a topic branch is about. + + * "git fmt-merge-msg" learned to take the branch description into + account when preparing a merge summary that "git merge" records + when merging a local branch. + + * "git request-pull" has been updated to convey more information + useful for integrators to decide if a topic is worth merging and + what is pulled is indeed what the requestor asked to pull, + including: + + - the tip of the branch being requested to be merged; + - the branch description describing what the topic is about; + - the contents of the annotated tag, when requesting to pull a tag. + + * "git pull" learned to notice 'pull.rebase' configuration variable, + which serves as a global fallback for setting 'branch.<name>.rebase' + configuration variable per branch. + + * "git tag" learned "--cleanup" option to control how the whitespaces + and empty lines in tag message are cleaned up. + + * "gitweb" learned to show side-by-side diff. + +Also contains minor documentation updates and code clean-ups. + + +Fixes since v1.7.8 +------------------ + + * The function header pattern for files with "diff=cpp" attribute did + not consider "type *funcname(type param1,..." as the beginning of a + function. + (merge 37e7793 tr/userdiff-c-returns-pointer later to maint). + + * The replacement implemention for snprintf used on platforms with + native snprintf that is broken did not use va_copy correctly. + (merge a9bfbc5 jk/maint-snprintf-va-copy later to maint). + + * LF-to-CRLF streaming filter used when checking out a large-ish blob + fell into an infinite loop with a rare input. + (merge 284e3d2 cn/maint-lf-to-crlf-filter later to maint). + + * git native connection going over TCP (not over SSH) did not set + SO_KEEPALIVE option which failed to receive link layer errors. + (merge e47a858 ew/keepalive later to maint). + + * "git archive" mistakenly allowed remote clients to ask for commits + that are not at the tip of any ref. + (merge 7b51c33 jk/maint-upload-archive later to maint). + + * "git apply --check" did not error out when given an empty input + without any patch. + (merge cc64b31 bc/maint-apply-check-no-patch later to maint). + + * "git checkout -m" did not recreate the conflicted state in a "both + sides added, without any common ancestor version" conflict + situation. + (merge 335c6e4 jc/checkout-m-twoway later to maint). + + * "git cherry-pick $commit" (not a range) created an unnecessary + sequencer state and interfered with valid workflow to use the + command during a session to cherry-pick multiple commits. + (merge d596118 jn/maint-sequencer-fixes later to maint). + + * The error message from "git diff" and "git status" when they fail + to inspect changes in submodules did not report which submodule they + had trouble with. + (merge 6a5ceda jl/submodule-status-failure-report later to maint). + + * "fast-import" did not correctly update an existing notes tree, + possibly corrupting the fan-out. + + * "git fetch-pack" accepted unqualified refs that do not begin with + refs/ by mistake and compensated it by matching the refspec with + tail-match, which was doubly wrong. This broke fetching from a + repository with a funny named ref "refs/foo/refs/heads/master" and a + 'master' branch with "git fetch-pack refs/heads/master", as the + command incorrectly considered the former a "match". + (merge bab8d28 jk/fetch-no-tail-match-refs later to maint). + + * "git mv" gave suboptimal error/warning messages when it overwrites + target files. It also did not pay attention to "-v" option. + (merge 534376c jk/maint-mv later to maint). + + * When a "reword" action in "git rebase -i" failed to run "commit --amend", + we did not give the control back to the user to resolve the situation, and + instead kept the original commit log message. + (merge 0becb3e aw/rebase-i-stop-on-failure-to-amend later to maint). + + * Authenticated "git push" over dumb HTTP were broken with a recent + change and failed without asking for password when username is + given. + (merge a4ddbc3 jk/maint-push-over-dav later to maint). + +-- +exec >/var/tmp/1 +O=v1.7.8-351-g2dccad3 +echo O=$(git describe master) +git log --first-parent --oneline --reverse ^$O master +echo +git shortlog --no-merges ^$O ^maint master |