summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Documentation/CodingGuidelines4
-rw-r--r--Documentation/RelNotes/1.7.0.8.txt10
-rw-r--r--Documentation/RelNotes/1.7.1.3.txt10
-rw-r--r--Documentation/RelNotes/1.7.2.4.txt10
-rw-r--r--Documentation/RelNotes/1.7.3.3.txt54
-rw-r--r--Documentation/config.txt10
-rw-r--r--Documentation/diff-options.txt26
-rw-r--r--Documentation/fetch-options.txt2
-rw-r--r--Documentation/git-add.txt80
-rw-r--r--Documentation/git-cherry-pick.txt2
-rw-r--r--Documentation/git-commit.txt4
-rw-r--r--Documentation/git-pull.txt18
-rw-r--r--Documentation/git-repack.txt6
-rw-r--r--Documentation/git-reset.txt76
-rw-r--r--Documentation/git-revert.txt2
-rw-r--r--Documentation/git-rm.txt12
-rw-r--r--Documentation/git-show.txt4
-rw-r--r--Documentation/gitattributes.txt2
-rw-r--r--Documentation/rev-list-options.txt5
-rw-r--r--Documentation/technical/api-sigchain.txt41
-rwxr-xr-xGIT-VERSION-GEN2
-rw-r--r--INSTALL8
-rw-r--r--Makefile4
l---------RelNotes2
-rw-r--r--builtin.h2
-rw-r--r--builtin/add.c3
-rw-r--r--builtin/apply.c69
-rw-r--r--builtin/blame.c33
-rw-r--r--builtin/cat-file.c2
-rw-r--r--builtin/clean.c8
-rw-r--r--builtin/merge-file.c7
-rw-r--r--builtin/merge.c20
-rw-r--r--builtin/pack-objects.c16
-rw-r--r--builtin/rev-list.c6
-rw-r--r--builtin/revert.c2
-rw-r--r--builtin/send-pack.c2
-rw-r--r--compat/mingw.c4
-rwxr-xr-xcontrib/completion/git-completion.bash2
-rw-r--r--contrib/emacs/git-blame.el1
-rwxr-xr-xcontrib/examples/git-svnimport.perl2
-rwxr-xr-xcontrib/fast-import/git-p44
-rwxr-xr-xcontrib/fast-import/import-directories.perl3
-rwxr-xr-xcontrib/hooks/post-receive-email49
-rw-r--r--diff.c23
-rw-r--r--dir.c3
-rwxr-xr-xgit-add--interactive.perl17
-rwxr-xr-xgit-archimport.perl3
-rwxr-xr-xgit-cvsexportcommit.perl4
-rwxr-xr-xgit-cvsimport.perl3
-rwxr-xr-xgit-cvsserver.perl1
-rwxr-xr-xgit-difftool.perl1
-rwxr-xr-xgit-rebase.sh4
-rwxr-xr-xgit-relink.perl2
-rwxr-xr-xgit-repack.sh11
-rwxr-xr-xgit-send-email.perl18
-rw-r--r--git-sh-setup.sh3
-rwxr-xr-xgit-submodule.sh5
-rwxr-xr-xgit-svn.perl1
-rwxr-xr-xgitweb/gitweb.perl1
-rw-r--r--http.c5
-rw-r--r--mailmap.c10
-rw-r--r--perl/Git.pm1
-rw-r--r--setup.c4
-rw-r--r--sha1_name.c2
-rw-r--r--t/gitweb-lib.sh2
-rw-r--r--t/lib-httpd/apache.conf7
-rwxr-xr-xt/t1011-read-tree-sparse-checkout.sh10
-rwxr-xr-xt/t3402-rebase-merge.sh21
-rwxr-xr-xt/t3419-rebase-patch-id.sh109
-rwxr-xr-xt/t3506-cherry-pick-ff.sh10
-rwxr-xr-xt/t4011-diff-symlink.sh26
-rwxr-xr-xt/t4012-diff-binary.sh4
-rwxr-xr-xt/t4015-diff-whitespace.sh37
-rwxr-xr-xt/t4018-diff-funcname.sh2
-rwxr-xr-xt/t4019-diff-wserror.sh9
-rwxr-xr-xt/t4034-diff-words.sh72
-rwxr-xr-xt/t4103-apply-binary.sh27
-rwxr-xr-xt/t4120-apply-popt.sh26
-rwxr-xr-xt/t4132-apply-removal.sh2
-rwxr-xr-xt/t4135-apply-weird-filenames.sh16
-rw-r--r--t/t4135/damaged-tz.diff5
-rw-r--r--t/t4135/funny-tz.diff5
-rwxr-xr-xt/t4203-mailmap.sh67
-rwxr-xr-xt/t5551-http-fetch.sh8
-rwxr-xr-xt/t6006-rev-list-format.sh8
-rwxr-xr-xt/t6023-merge-file.sh8
-rwxr-xr-xt/t7006/test-terminal.perl1
-rwxr-xr-xt/t7403-submodule-sync.sh12
-rwxr-xr-xt/t7607-merge-overwrite.sh16
-rwxr-xr-xt/t8006-blame-textconv.sh62
-rwxr-xr-xt/t8007-cat-file-textconv.sh38
-rwxr-xr-xt/t9001-send-email.sh36
-rwxr-xr-xt/t9700/test.pl2
-rw-r--r--t/test-lib.sh53
-rw-r--r--userdiff.c17
-rw-r--r--ws.c7
-rw-r--r--xdiff/xemit.c38
97 files changed, 1230 insertions, 284 deletions
diff --git a/Documentation/CodingGuidelines b/Documentation/CodingGuidelines
index 09ffc46563..46f8a3fab1 100644
--- a/Documentation/CodingGuidelines
+++ b/Documentation/CodingGuidelines
@@ -31,6 +31,10 @@ But if you must have a list of rules, here they are.
For shell scripts specifically (not exhaustive):
+ - We use tabs for indentation.
+
+ - Case arms are indented at the same depth as case and esac lines.
+
- We prefer $( ... ) for command substitution; unlike ``, it
properly nests. It should have been the way Bourne spelled
it from day one, but unfortunately isn't.
diff --git a/Documentation/RelNotes/1.7.0.8.txt b/Documentation/RelNotes/1.7.0.8.txt
new file mode 100644
index 0000000000..7f05b48e17
--- /dev/null
+++ b/Documentation/RelNotes/1.7.0.8.txt
@@ -0,0 +1,10 @@
+Git v1.7.0.8 Release Notes
+==========================
+
+This is primarily to backport support for the new "add.ignoreErrors"
+name given to the existing "add.ignore-errors" configuration variable.
+
+The next version, Git 1.7.4, and future versions, will support both
+old and incorrect name and the new corrected name, but without this
+backport, users who want to use the new name "add.ignoreErrors" in
+their repositories cannot use older versions of Git.
diff --git a/Documentation/RelNotes/1.7.1.3.txt b/Documentation/RelNotes/1.7.1.3.txt
new file mode 100644
index 0000000000..5b18518449
--- /dev/null
+++ b/Documentation/RelNotes/1.7.1.3.txt
@@ -0,0 +1,10 @@
+Git v1.7.1.3 Release Notes
+==========================
+
+This is primarily to backport support for the new "add.ignoreErrors"
+name given to the existing "add.ignore-errors" configuration variable.
+
+The next version, Git 1.7.4, and future versions, will support both
+old and incorrect name and the new corrected name, but without this
+backport, users who want to use the new name "add.ignoreErrors" in
+their repositories cannot use older versions of Git.
diff --git a/Documentation/RelNotes/1.7.2.4.txt b/Documentation/RelNotes/1.7.2.4.txt
new file mode 100644
index 0000000000..f7950a4c04
--- /dev/null
+++ b/Documentation/RelNotes/1.7.2.4.txt
@@ -0,0 +1,10 @@
+Git v1.7.2.4 Release Notes
+==========================
+
+This is primarily to backport support for the new "add.ignoreErrors"
+name given to the existing "add.ignore-errors" configuration variable.
+
+The next version, Git 1.7.4, and future versions, will support both
+old and incorrect name and the new corrected name, but without this
+backport, users who want to use the new name "add.ignoreErrors" in
+their repositories cannot use older versions of Git.
diff --git a/Documentation/RelNotes/1.7.3.3.txt b/Documentation/RelNotes/1.7.3.3.txt
new file mode 100644
index 0000000000..9b2b2448df
--- /dev/null
+++ b/Documentation/RelNotes/1.7.3.3.txt
@@ -0,0 +1,54 @@
+Git v1.7.3.3 Release Notes
+==========================
+
+In addition to the usual fixes, this release also includes support for
+the new "add.ignoreErrors" name given to the existing "add.ignore-errors"
+configuration variable.
+
+The next version, Git 1.7.4, and future versions, will support both
+old and incorrect name and the new corrected name, but without this
+backport, users who want to use the new name "add.ignoreErrors" in
+their repositories cannot use older versions of Git.
+
+Fixes since v1.7.3.2
+--------------------
+
+ * "git apply" segfaulted when a bogus input is fed to it.
+
+ * Running "git cherry-pick --ff" on a root commit segfaulted.
+
+ * "diff", "blame" and friends incorrectly applied textconv filters to
+ symlinks.
+
+ * Highlighting of whitespace breakage in "diff" output was showing
+ incorrect amount of whitespaces when blank-at-eol is set and the line
+ consisted only of whitespaces and a TAB.
+
+ * "diff" was overly inefficient when trying to find the line to use for
+ the function header (i.e. equivalent to --show-c-function of GNU diff).
+
+ * "git imap-send" depends on libcrypto but our build rule relied on the
+ linker to implicitly link it via libssl, which was wrong.
+
+ * "git merge-file" can be called from within a subdirectory now.
+
+ * "git repack -f" expanded and recompressed non-delta objects in the
+ existing pack, which was wasteful. Use new "-F" option if you really
+ want to (e.g. when changing the pack.compression level).
+
+ * "git rev-list --format="...%x00..." incorrectly chopped its output
+ at NUL.
+
+ * "git send-email" did not correctly remove duplicate mail addresses from
+ the Cc: header that appear on the To: header.
+
+ * The completion script (in contrib/completion) ignored lightweight tags
+ in __git_ps1().
+
+ * "git-blame" mode (in contrib/emacs) didn't say (require 'format-spec)
+ even though it depends on it; it didn't work with Emacs 22 or older
+ unless Gnus is used.
+
+ * "git-p4" (in contrib/) did not correctly handle deleted files.
+
+Other minor fixes and documentation updates are also included.
diff --git a/Documentation/config.txt b/Documentation/config.txt
index 7f6b2109bd..3fd4b626fa 100644
--- a/Documentation/config.txt
+++ b/Documentation/config.txt
@@ -548,9 +548,13 @@ core.sparseCheckout::
linkgit:git-read-tree[1] for more information.
add.ignore-errors::
+add.ignoreErrors::
Tells 'git add' to continue adding files when some files cannot be
added due to indexing errors. Equivalent to the '--ignore-errors'
- option of linkgit:git-add[1].
+ option of linkgit:git-add[1]. Older versions of git accept only
+ `add.ignore-errors`, which does not follow the usual naming
+ convention for configuration variables. Newer versions of git
+ honor `add.ignoreErrors` as well.
alias.*::
Command aliases for the linkgit:git[1] command wrapper - e.g.
@@ -1466,6 +1470,10 @@ pack.compression::
not set, defaults to -1, the zlib default, which is "a default
compromise between speed and compression (currently equivalent
to level 6)."
++
+Note that changing the compression level will not automatically recompress
+all existing objects. You can force recompression by passing the -F option
+to linkgit:git-repack[1].
pack.deltaCacheSize::
The maximum memory in bytes used for caching deltas in
diff --git a/Documentation/diff-options.txt b/Documentation/diff-options.txt
index d723e99232..5495344e61 100644
--- a/Documentation/diff-options.txt
+++ b/Documentation/diff-options.txt
@@ -247,20 +247,6 @@ endif::git-log[]
Detect copies as well as renames. See also `--find-copies-harder`.
If `n` is specified, it has the same meaning as for `-M<n>`.
-ifndef::git-format-patch[]
---diff-filter=[(A|C|D|M|R|T|U|X|B)...[*]]::
- Select only files that are Added (`A`), Copied (`C`),
- Deleted (`D`), Modified (`M`), Renamed (`R`), have their
- type (i.e. regular file, symlink, submodule, ...) changed (`T`),
- are Unmerged (`U`), are
- Unknown (`X`), or have had their pairing Broken (`B`).
- Any combination of the filter characters (including none) can be used.
- When `*` (All-or-none) is added to the combination, all
- paths are selected if there is any file that matches
- other criteria in the comparison; if there is no file
- that matches other criteria, nothing is selected.
-endif::git-format-patch[]
-
--find-copies-harder::
For performance reasons, by default, `-C` option finds copies only
if the original file of the copy was modified in the same
@@ -278,6 +264,18 @@ endif::git-format-patch[]
number.
ifndef::git-format-patch[]
+--diff-filter=[(A|C|D|M|R|T|U|X|B)...[*]]::
+ Select only files that are Added (`A`), Copied (`C`),
+ Deleted (`D`), Modified (`M`), Renamed (`R`), have their
+ type (i.e. regular file, symlink, submodule, ...) changed (`T`),
+ are Unmerged (`U`), are
+ Unknown (`X`), or have had their pairing Broken (`B`).
+ Any combination of the filter characters (including none) can be used.
+ When `*` (All-or-none) is added to the combination, all
+ paths are selected if there is any file that matches
+ other criteria in the comparison; if there is no file
+ that matches other criteria, nothing is selected.
+
-S<string>::
Look for differences that introduce or remove an instance of
<string>. Note that this is different than the string simply
diff --git a/Documentation/fetch-options.txt b/Documentation/fetch-options.txt
index 470ac31396..5ce1e72745 100644
--- a/Documentation/fetch-options.txt
+++ b/Documentation/fetch-options.txt
@@ -53,6 +53,7 @@ endif::git-pull[]
behavior for a remote may be specified with the remote.<name>.tagopt
setting. See linkgit:git-config[1].
+ifndef::git-pull[]
-t::
--tags::
Most of the tags are fetched automatically as branch
@@ -63,6 +64,7 @@ endif::git-pull[]
downloaded. The default behavior for a remote may be
specified with the remote.<name>.tagopt setting. See
linkgit:git-config[1].
+endif::git-pull[]
-u::
--update-head-ok::
diff --git a/Documentation/git-add.txt b/Documentation/git-add.txt
index 73378b2bef..54aaaeb41b 100644
--- a/Documentation/git-add.txt
+++ b/Documentation/git-add.txt
@@ -92,9 +92,11 @@ See ``Interactive mode'' for details.
edit it. After the editor was closed, adjust the hunk headers
and apply the patch to the index.
+
-*NOTE*: Obviously, if you change anything else than the first character
-on lines beginning with a space or a minus, the patch will no longer
-apply.
+The intent of this option is to pick and choose lines of the patch to
+apply, or even to modify the contents of lines to be staged. This can be
+quicker and more flexible than using the interactive hunk selector.
+However, it is easy to confuse oneself and create a patch that does not
+apply to the index. See EDITING PATCHES below.
-u::
--upda