summaryrefslogtreecommitdiff
path: root/Documentation/RelNotes
diff options
context:
space:
mode:
Diffstat (limited to 'Documentation/RelNotes')
-rw-r--r--Documentation/RelNotes/1.7.11.7.txt46
-rw-r--r--Documentation/RelNotes/1.7.12.1.txt127
-rw-r--r--Documentation/RelNotes/1.7.12.2.txt40
-rw-r--r--Documentation/RelNotes/1.8.0.txt127
4 files changed, 263 insertions, 77 deletions
diff --git a/Documentation/RelNotes/1.7.11.7.txt b/Documentation/RelNotes/1.7.11.7.txt
new file mode 100644
index 0000000000..e7e79d999b
--- /dev/null
+++ b/Documentation/RelNotes/1.7.11.7.txt
@@ -0,0 +1,46 @@
+Git v1.7.11.7 Release Notes
+===========================
+
+Fixes since v1.7.11.6
+---------------------
+
+ * 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.
+
+ * Git ships with a fall-back regexp implementation for platforms with
+ buggy regexp library, but it was easy for people to keep using their
+ platform regexp. A new test has been added to check this.
+
+ * "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.
+
+ * 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".
+
+ * "git for-each-ref" did not currectly 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.
+
+ * 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.
+
+ * "git show --format='%ci'" did not give timestamp correctly for
+ commits created without human readable name on "committer" line.
+ (merge e27ddb6 jc/maint-ident-missing-human-name later to maint).
+
+ * "git show --quiet" ought to be a synonym for "git show -s", but
+ wasn't.
diff --git a/Documentation/RelNotes/1.7.12.1.txt b/Documentation/RelNotes/1.7.12.1.txt
index 4088a166f5..b8f04af19f 100644
--- a/Documentation/RelNotes/1.7.12.1.txt
+++ b/Documentation/RelNotes/1.7.12.1.txt
@@ -4,43 +4,6 @@ Git 1.7.12.1 Release Notes
Fixes since v1.7.12
-------------------
- * "ciabot" script (in contrib/) has been updated with extensive
- documentation.
-
- * 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.
-
- * 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.
-
- * 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.
-
* "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
@@ -49,6 +12,11 @@ Fixes since v1.7.12
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).
@@ -57,7 +25,11 @@ Fixes since v1.7.12
did not advertise that they are available. fetch-pack has been
fixed not to do so.
- * "git for-each-ref" did not currectly support more than one --sort
+ * "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
@@ -65,6 +37,10 @@ Fixes since v1.7.12
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).
@@ -76,26 +52,83 @@ Fixes since v1.7.12
* The reflog entries left by "git rebase" and "git rebase -i" were
inconsistent (the interactive one gave an abbreviated object name).
- * 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.
-
* 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 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 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.
- * "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 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.
diff --git a/Documentation/RelNotes/1.7.12.2.txt b/Documentation/RelNotes/1.7.12.2.txt
new file mode 100644
index 0000000000..69255745e6
--- /dev/null
+++ b/Documentation/RelNotes/1.7.12.2.txt
@@ -0,0 +1,40 @@
+Git 1.7.12.2 Release Notes
+==========================
+
+Fixes since v1.7.12.1
+---------------------
+
+ * When "git am" is fed an input that has multiple "Content-type: ..."
+ header, it did not grok charset= attribute correctly.
+
+ * Even during a conflicted merge, "git blame $path" always meant to
+ blame uncommitted changes to the "working tree" version; make it
+ more useful by showing cleanly merged parts as coming from the other
+ branch that is being merged.
+
+ * "git blame MAKEFILE" run in a history that has "Makefile" but not
+ "MAKEFILE" should say "No such file MAKEFILE in HEAD", but got
+ confused on a case insensitive filesystem and failed to do so.
+
+ * "git fetch --all", when passed "--no-tags", did not honor the
+ "--no-tags" option while fetching from individual remotes (the same
+ issue existed with "--tags", but combination "--all --tags" makes
+ much less sense than "--all --no-tags").
+
+ * "git log/diff/format-patch --stat" showed the "N line(s) added"
+ comment in user's locale and caused careless submitters to send
+ patches with such a line in them to projects whose project language
+ is not their language, mildly irritating others. Localization to
+ the line has been disabled for now.
+
+ * "git log --all-match --grep=A --grep=B" ought to show commits that
+ mention both A and B, but when these three options are used with
+ --author or --committer, it showed commits that mention either A or
+ B (or both) instead.
+
+ * The subcommand to remove the definition of a remote in "git remote"
+ was named "rm" even though all other subcommands were spelled out.
+ Introduce "git remote remove" to remove confusion, and keep "rm" as
+ a backward compatible synonym.
+
+Also contains a handful of documentation updates.
diff --git a/Documentation/RelNotes/1.8.0.txt b/Documentation/RelNotes/1.8.0.txt
index 9714422dee..e183df6410 100644
--- a/Documentation/RelNotes/1.8.0.txt
+++ b/Documentation/RelNotes/1.8.0.txt
@@ -28,9 +28,15 @@ UI, Workflows & Features
* A credential helper for Win32 to allow access to the keychain of
the logged-in user has been added.
+ * An initial port to HP NonStop.
+
* A credential helper to allow access to the Gnome keyring has been
added.
+ * When "git am" sanitizes the Subject: line, we strip the prefix from
+ "Re: subject" and also from a less common "re: subject", but left
+ even less common "RE: subject" intact.
+
* It was tempting to say "git branch --set-upstream origin/master",
but that tells Git to arrange the local branch "origin/master" to
integrate with the currently checked out branch, which is highly
@@ -41,6 +47,11 @@ UI, Workflows & Features
* "git cherry-pick" learned the "--allow-empty-message" option to
allow it to replay a commit without any log message.
+ * After "git cherry-pick -s" gave control back to the user asking
+ help to resolve conflicts, concluding "git commit" used to need to
+ be run with "-s" if the user wants to sign it off; now the command
+ leaves the sign-off line in the log template.
+
* "git daemon" learned the "--access-hook" option to allow an
external command to decline service based on the client address,
repository path, etc.
@@ -54,11 +65,20 @@ UI, Workflows & Features
* "git merge-base" learned "--is-ancestor A B" option to tell if A is
an ancestor of B. The result is indicated by its exit status code.
+ * The "-Xours" backend option to "git merge -s recursive" now takes
+ effect even on binary files.
+
+ * "git rebase -i" learned the "--edit-todo" option to open an editor
+ to edit the insn sheet.
+
Foreign Interface
* "git svn" has been updated to work with SVN 1.7.
+ * "git p4" learned "--conflicts" option to specify what to do when
+ encountering a conflict during "p4 submit".
+
Performance, Internal Implementation, etc. (please report possible regressions)
@@ -69,6 +89,9 @@ Performance, Internal Implementation, etc. (please report possible regressions)
* The "check-docs" build target has been updated and greatly
simplified.
+ * The test suite is run under MALLOC_CHECK_ when running with glibc
+ that supports the feature.
+
* The documentation in the TeXinfo format was using indented output
for materials meant to be examples that are better typeset in
monospace.
@@ -109,50 +132,84 @@ Unless otherwise noted, all the fixes since v1.7.12 in the
maintenance track are contained in this release (see release notes
to them for details).
- * "git fetch --all", when passed "--no-tags", did not honor the
- "--no-tags" option while fetching from individual remotes (the same
- issue existed with "--tags", but combination "--all --tags" makes
- much less sense than "--all --no-tags").
- (merge 8556646 dj/fetch-all-tags later to maint).
+ * 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.
- * The subcommand in "git remote" to remove a defined remote was
- "rm" and the command did not take a fully-spelled "remove".
- (merge e17dba8 nd/maint-remote-remove later to maint).
+ * When looking for $HOME/.gitconfig etc., it is OK if we cannot read
+ them because they do not exist, but we did not diagnose existing
+ files that we cannot read.
- * 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".
+ * When "git am" is fed an input that has multiple "Content-type: ..."
+ header, it did not grok charset= attribute correctly.
- * "git cvsimport" did not thoroughly cleanse tag names that it
- inferred from the names of the tags it obtained from CVS, which
- caused "git tag" to barf and stop the import in the middle.
+ * "git blame MAKEFILE" run in a history that has "Makefile" but not
+ "MAKEFILE" should say "No such file MAKEFILE in HEAD", but got
+ confused on a case insensitive filesystem and failed to do so.
- * "git show --format='%ci'" did not give timestamp correctly for
- commits created without human readable name on "committer" line.
- (merge e27ddb6 jc/maint-ident-missing-human-name later to maint).
+ * Even during a conflicted merge, "git blame $path" always meant to
+ blame uncommitted changes to the "working tree" version; make it
+ more useful by showing cleanly merged parts as coming from the other
+ branch that is being merged.
+
+ * Output from "git branch -v" contains "(no branch)" that could be
+ localized, but the code to align it along with the names of
+ branches were counting in bytes, not in display columns.
* "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.
- (merge a73e22e mz/cherry-pick-cmdline-order later to maint).
- * "git show --quiet" ought to be a synonym for "git show -s", but
- wasn't.
- (merge f9c75d8 jk/maint-quiet-is-synonym-to-s-in-log later to maint).
+ * Documentation talked about "first line of commit log" when it meant
+ the title of the commit. The description was clarified by defining
+ how the title is decided and rewording the casual mention of "first
+ line" to "title".
+
+ * "git cvsimport" did not thoroughly cleanse tag names that it
+ inferred from the names of the tags it obtained from CVS, which
+ caused "git tag" to barf and stop the import in the middle.
+
+ * Earlier we made the diffstat summary line that shows the number of
+ lines added/deleted localizable, but it was found irritating having
+ to see them in various languages on a list whose discussion language
+ is English.
+
+ * "git fetch --all", when passed "--no-tags", did not honor the
+ "--no-tags" option while fetching from individual remotes (the same
+ issue existed with "--tags", but combination "--all --tags" makes
+ much less sense than "--all --no-tags").
+
+ * "git fetch" over http had an old workaround for an unlikely server
+ misconfiguration; it turns out that this hurts debuggability of the
+ configuration in general, and has been reverted.
+ (merge 6ac964a sp/maint-http-info-refs-no-retry later to maint).
+
+ * "git fetch" over http advertised that it supports "deflate", which
+ is much less common, and did not advertise more common "gzip" on
+ its Accept-Encoding header.
+ (merge aa90b96 sp/maint-http-enable-gzip later to maint).
+
+ * 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".
+
+ * "git log --all-match --grep=A --grep=B" ought to show commits that
+ mention both A and B, but when these three options are used with
+ --author or --committer, it showed commits that mention either A or
+ B (or both) instead.
* "git p4", when "--use-client-spec" and "--detect-branches" are used
together, misdetected branches.
- (merge 21ef5df pw/p4-use-client-spec-branch-detection later to maint).
- * Output from "git branch -v" contains "(no branch)" that could be
- localized, but the code to align it along with the names of
- branches were counting in bytes, not in display columns.
- (merge 1452bd6 nd/branch-v-alignment later to maint).
+ * When you misspell the command name you give to the "exec" action in
+ the "git rebase -i" insn sheet, you are told that 'rebase' is not a
+ git subcommand from "git rebase --continue".
- * When looking for $HOME/.gitconfig etc., it is OK if we cannot read
- them because they do not exist, but we did not diagnose existing
- files that we cannot read.
+ * The subcommand in "git remote" to remove a defined remote was
+ "rm" and the command did not take a fully-spelled "remove".
* 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
@@ -160,4 +217,14 @@ to them for details).
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.
- (merge 6183749 sb/send-email-reconfirm-fix later to maint).
+
+ * "git show --format='%ci'" did not give timestamp correctly for
+ commits created without human readable name on "committer" line.
+
+ * "git show --quiet" ought to be a synonym for "git show -s", but
+ wasn't.
+
+ * "git submodule frotz" was not diagnosed as "frotz" being an unknown
+ subcommand to "git submodule"; the user instead got a complaint
+ that "git submodule status" was run with an unknown path "frotz".
+ (merge af9c9f9 rr/maint-submodule-unknown-cmd later to maint).