summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Documentation/RelNotes-1.6.6.txt23
-rw-r--r--Documentation/config.txt50
-rw-r--r--Documentation/diff-options.txt19
-rw-r--r--Documentation/fetch-options.txt18
-rw-r--r--Documentation/git-apply.txt41
-rw-r--r--Documentation/git-cvsserver.txt19
-rw-r--r--Documentation/git-fetch.txt14
-rw-r--r--Documentation/git-pack-objects.txt12
-rw-r--r--Documentation/git-rebase.txt16
-rw-r--r--Documentation/git-remote.txt7
-rw-r--r--Documentation/git-replace.txt24
-rw-r--r--Documentation/merge-strategies.txt5
-rw-r--r--Documentation/pull-fetch-param.txt7
-rw-r--r--Documentation/rev-list-options.txt6
-rw-r--r--Documentation/technical/api-history-graph.txt5
-rw-r--r--Documentation/user-manual.txt20
-rw-r--r--Makefile1
-rw-r--r--advice.c2
-rw-r--r--advice.h1
-rw-r--r--builtin-blame.c1
-rw-r--r--builtin-commit.c2
-rw-r--r--builtin-diff-tree.c1
-rw-r--r--builtin-fetch.c198
-rw-r--r--builtin-fsck.c2
-rw-r--r--builtin-grep.c8
-rw-r--r--builtin-mailinfo.c12
-rw-r--r--builtin-pack-objects.c9
-rw-r--r--builtin-prune-packed.c2
-rw-r--r--builtin-remote.c190
-rw-r--r--builtin-rev-list.c7
-rw-r--r--builtin-send-pack.c2
-rw-r--r--builtin-update-index.c1
-rw-r--r--builtin-upload-archive.c1
-rw-r--r--bundle.c14
-rw-r--r--cache.h5
-rw-r--r--color.h2
-rw-r--r--config.c12
-rw-r--r--connect.c1
-rwxr-xr-xcontrib/completion/git-completion.bash76
-rw-r--r--daemon.c2
-rw-r--r--diffcore-break.c6
-rw-r--r--diffcore-rename.c7
-rw-r--r--environment.c2
-rw-r--r--fsck.h1
-rwxr-xr-xgit-am.sh13
-rwxr-xr-xgit-bisect.sh3
-rwxr-xr-xgit-instaweb.sh5
-rwxr-xr-xgit-svn.perl5
-rw-r--r--git.c3
-rwxr-xr-xgitweb/gitweb.perl83
-rw-r--r--graph.h1
-rw-r--r--grep.c13
-rw-r--r--grep.h2
-rw-r--r--http-push.c2
-rw-r--r--imap-send.c8
-rw-r--r--merge-recursive.c12
-rw-r--r--path.c83
-rw-r--r--refs.c7
-rw-r--r--refs.h2
-rw-r--r--remote-curl.c4
-rw-r--r--remote.c42
-rw-r--r--remote.h3
-rw-r--r--revision.c106
-rw-r--r--revision.h4
-rw-r--r--strbuf.h2
-rw-r--r--t/gitweb-lib.sh16
-rwxr-xr-xt/t4014-format-patch.sh6
-rwxr-xr-xt/t5100-mailinfo.sh6
-rw-r--r--t/t5100/info00155
-rw-r--r--t/t5100/info0015--no-inbody-headers5
-rw-r--r--t/t5100/info00165
-rw-r--r--t/t5100/info0016--no-inbody-headers5
-rw-r--r--t/t5100/msg00152
-rw-r--r--t/t5100/msg0015--no-inbody-headers3
-rw-r--r--t/t5100/msg00162
-rw-r--r--t/t5100/msg0016--no-inbody-headers4
-rw-r--r--t/t5100/patch00158
-rw-r--r--t/t5100/patch0015--no-inbody-headers8
-rw-r--r--t/t5100/patch00168
-rw-r--r--t/t5100/patch0016--no-inbody-headers8
-rw-r--r--t/t5100/sample.mbox33
-rwxr-xr-xt/t5505-remote.sh11
-rwxr-xr-xt/t5506-remote-groups.sh21
-rwxr-xr-xt/t5514-fetch-multiple.sh154
-rwxr-xr-xt/t6017-rev-list-stdin.sh61
-rwxr-xr-xt/t6050-replace.sh17
-rwxr-xr-xt/t7002-grep.sh10
-rwxr-xr-xt/t9146-git-svn-empty-dirs.sh23
-rwxr-xr-xt/t9400-git-cvsserver-server.sh2
-rwxr-xr-xt/t9401-git-cvsserver-crlf.sh2
-rwxr-xr-xt/t9501-gitweb-standalone-http-status.sh39
-rwxr-xr-xt/t9502-gitweb-standalone-parse-output.sh115
-rwxr-xr-xt/t9700-perl-git.sh4
-rwxr-xr-xt/t9700/test.pl2
94 files changed, 1488 insertions, 354 deletions
diff --git a/Documentation/RelNotes-1.6.6.txt b/Documentation/RelNotes-1.6.6.txt
index 2f9c25404e..371101d667 100644
--- a/Documentation/RelNotes-1.6.6.txt
+++ b/Documentation/RelNotes-1.6.6.txt
@@ -42,15 +42,29 @@ Updates since v1.6.5
* various git-gui updates including new translations, wm states, etc.
+ * git-svn updates.
+
+ * "git fetch" over http learned a new mode that is different from the
+ traditional "dumb commit walker".
+
(portability)
+ * imap-send can be built on mingw port.
+
(performance)
+ * "git diff -B" has smaller memory footprint.
+
(usability, bells and whistles)
* The object replace mechanism can be bypassed with --no-replace-objects
global option given to the "git" program.
+ * In configuration files, a few variables that name paths can begin with ~/
+ and ~username/ and they are expanded as expected.
+
+ * "git subcmd -h" now shows short usage help for many more subcommands.
+
* "git bisect reset" can reset to an arbitrary commit.
* "git checkout frotz" when there is no local branch "frotz" but there
@@ -65,6 +79,8 @@ Updates since v1.6.5
* "git fsck" by default checks the packfiles (i.e. "--full" is the
default); you can turn it off with "git fsck --no-full".
+ * "git grep" can use -F (fixed strings) and -i (ignore case) together.
+
* import-tars contributed fast-import frontend learned more types of
compressed tarballs.
@@ -77,6 +93,8 @@ Updates since v1.6.5
. to wrap text with the "%w()" specifier.
. to show reflog information with "%g[sdD]" specifier.
+ * "git notes" command to annotate existing commits.
+
* "git merge" (and "git pull") learned --ff-only option to make it fail
if the merge does not result in a fast-forward.
@@ -87,6 +105,9 @@ Updates since v1.6.5
the shell, which is done by "edit" to give an opportunity to tweak the
contents.
+ * In "git submodule add <repository> <path>", <path> is now optional and
+ inferred from <repository> the same way "git clone <repository>" does.
+
* "git svn" learned to read SVN 1.5+ and SVK merge tickets.
* Author names shown in gitweb output are links to search commits by the
@@ -104,5 +125,5 @@ release, unless otherwise noted.
---
exec >/var/tmp/1
echo O=$(git describe master)
-O=v1.6.5.3-152-g122d0f6
+O=v1.6.5.3-337-gf341feb
git shortlog --no-merges $O..master --not maint
diff --git a/Documentation/config.txt b/Documentation/config.txt
index 78ee906319..a8e0876a2a 100644
--- a/Documentation/config.txt
+++ b/Documentation/config.txt
@@ -126,12 +126,20 @@ advice.*::
Directions on how to stage/unstage/add shown in the
output of linkgit:git-status[1] and the template shown
when writing commit messages. Default: true.
+ commitBeforeMerge::
+ Advice shown when linkgit:git-merge[1] refuses to
+ merge to avoid overwritting local changes.
+ Default: true.
--
core.fileMode::
If false, the executable bit differences between the index and
the working copy are ignored; useful on broken filesystems like FAT.
- See linkgit:git-update-index[1]. True by default.
+ See linkgit:git-update-index[1].
++
+The default is true, except linkgit:git-clone[1] or linkgit:git-init[1]
+will probe and set core.fileMode false if appropriate when the
+repository is created.
core.ignoreCygwinFSTricks::
This option is only used by Cygwin implementation of Git. If false,
@@ -144,6 +152,18 @@ core.ignoreCygwinFSTricks::
is true, in which case ignoreCygwinFSTricks is ignored as Cygwin's
POSIX emulation is required to support core.filemode.
+core.ignorecase::
+ If true, this option enables various workarounds to enable
+ git to work better on filesystems that are not case sensitive,
+ like FAT. For example, if a directory listing finds
+ "makefile" when git expects "Makefile", git will assume
+ it is really the same file, and continue to remember it as
+ "Makefile".
++
+The default is false, except linkgit:git-clone[1] or linkgit:git-init[1]
+will probe and set core.ignorecase true if appropriate when the repository
+is created.
+
core.trustctime::
If false, the ctime differences between the index and the
working copy are ignored; useful when the inode change time
@@ -169,9 +189,10 @@ core.autocrlf::
writing to the filesystem. The variable can be set to
'input', in which case the conversion happens only while
reading from the filesystem but files are written out with
- `LF` at the end of lines. Currently, which paths to consider
- "text" (i.e. be subjected to the autocrlf mechanism) is
- decided purely based on the contents.
+ `LF` at the end of lines. A file is considered
+ "text" (i.e. be subjected to the autocrlf mechanism) based on
+ the file's `crlf` attribute, or if `crlf` is unspecified,
+ based on the file's contents. See linkgit:gitattributes[5].
core.safecrlf::
If true, makes git check if converting `CRLF` as controlled by
@@ -223,7 +244,11 @@ core.symlinks::
contain the link text. linkgit:git-update-index[1] and
linkgit:git-add[1] will not change the recorded type to regular
file. Useful on filesystems like FAT that do not support
- symbolic links. True by default.
+ symbolic links.
++
+The default is true, except linkgit:git-clone[1] or linkgit:git-init[1]
+will probe and set core.symlinks false if appropriate when the repository
+is created.
core.gitProxy::
A "proxy command" to execute (as 'command host port') instead
@@ -380,8 +405,9 @@ Common unit suffixes of 'k', 'm', or 'g' are supported.
core.excludesfile::
In addition to '.gitignore' (per-directory) and
'.git/info/exclude', git looks into this file for patterns
- of files which are not meant to be tracked. See
- linkgit:gitignore[5].
+ of files which are not meant to be tracked. "{tilde}/" is expanded
+ to the value of `$HOME` and "{tilde}user/" to the specified user's
+ home directory. See linkgit:gitignore[5].
core.editor::
Commands such as `commit` and `tag` that lets you edit
@@ -681,6 +707,8 @@ color.ui::
commit.template::
Specify a file to use as the template for new commit messages.
+ "{tilde}/" is expanded to the value of `$HOME` and "{tilde}user/" to the
+ specified user's home directory.
diff.autorefreshindex::
When using 'git-diff' to compare with work tree
@@ -1413,7 +1441,13 @@ remote.<name>.mirror::
remote.<name>.skipDefaultUpdate::
If true, this remote will be skipped by default when updating
- using the update subcommand of linkgit:git-remote[1].
+ using linkgit:git-fetch[1] or the `update` subcommand of
+ linkgit:git-remote[1].
+
+remote.<name>.skipFetchAll::
+ If true, this remote will be skipped by default when updating
+ using linkgit:git-fetch[1] or the `update` subcommand of
+ linkgit:git-remote[1].
remote.<name>.receivepack::
The default program to execute on the remote side when pushing. See
diff --git a/Documentation/diff-options.txt b/Documentation/diff-options.txt
index 2b37193a37..8707d0e740 100644
--- a/Documentation/diff-options.txt
+++ b/Documentation/diff-options.txt
@@ -85,10 +85,23 @@ ifndef::git-format-patch[]
endif::git-format-patch[]
ifndef::git-format-patch[]
+
-z::
- NUL-line termination on output. This affects the `--raw`
- output field terminator. Also output from commands such
- as `git-log` will be delimited with NUL between commits.
+ifdef::git-log[]
+ Separate the commits with NULs instead of with new newlines.
++
+Also, when `--raw` or `--numstat` has been given, do not munge
+pathnames and use NULs as output field terminators.
+endif::git-log[]
+ifndef::git-log[]
+ When `--raw` or `--numstat` has been given, do not munge
+ pathnames and use NULs as output field terminators.
+endif::git-log[]
++
+Without this option, each pathname output will have TAB, LF, double quotes,
+and backslash characters replaced with `\t`, `\n`, `\"`, and `\\`,
+respectively, and the pathname will be enclosed in double quotes if
+any of those replacements occurred.
--name-only::
Show only names of changed files.
diff --git a/Documentation/fetch-options.txt b/Documentation/fetch-options.txt
index 28868747da..ab6419fe6e 100644
--- a/Documentation/fetch-options.txt
+++ b/Documentation/fetch-options.txt
@@ -1,3 +1,6 @@
+--all::
+ Fetch all remotes.
+
-a::
--append::
Append ref names and object names of fetched refs to the
@@ -9,6 +12,11 @@
`git clone` with `--depth=<depth>` option (see linkgit:git-clone[1])
by the specified number of commits.
+ifndef::git-pull[]
+--dry-run::
+ Show what would be done, without making any changes.
+endif::git-pull[]
+
-f::
--force::
When 'git-fetch' is used with `<rbranch>:<lbranch>`
@@ -21,6 +29,16 @@
--keep::
Keep downloaded pack.
+ifndef::git-pull[]
+--multiple::
+ Allow several <repository> and <group> arguments to be
+ specified. No <refspec>s may be specified.
+
+--prune::
+ After fetching, remove any remote tracking branches which
+ no longer exist on the remote.
+endif::git-pull[]
+
ifdef::git-pull[]
--no-tags::
endif::git-pull[]
diff --git a/Documentation/git-apply.txt b/Documentation/git-apply.txt
index 5ee8c91f2d..c2528a7654 100644
--- a/Documentation/git-apply.txt
+++ b/Documentation/git-apply.txt
@@ -3,7 +3,7 @@ git-apply(1)
NAME
----
-git-apply - Apply a patch on a git index file and/or a working tree
+git-apply - Apply a patch to files and/or to the index
SYNOPSIS
@@ -20,8 +20,11 @@ SYNOPSIS
DESCRIPTION
-----------
-Reads supplied 'diff' output and applies it on a git index file
-and a work tree.
+Reads the supplied diff output (i.e. "a patch") and applies it to files.
+With the `--index` option the patch is also applied to the index, and
+with the `--cache` option the patch is only applied to the index.
+Without these options, the command applies the patch only to files,
+and does not require them to be in a git repository.
OPTIONS
-------
@@ -34,7 +37,7 @@ OPTIONS
input. Turns off "apply".
--numstat::
- Similar to \--stat, but shows the number of added and
+ Similar to `--stat`, but shows the number of added and
deleted lines in decimal notation and the pathname without
abbreviation, to make it more machine friendly. For
binary files, outputs two `-` instead of saying
@@ -48,22 +51,22 @@ OPTIONS
--check::
Instead of applying the patch, see if the patch is
- applicable to the current work tree and/or the index
+ applica