diff options
Diffstat (limited to 'Documentation')
-rw-r--r-- | Documentation/RelNotes/1.7.11.3.txt | 53 | ||||
-rw-r--r-- | Documentation/RelNotes/1.7.12.txt | 62 | ||||
-rw-r--r-- | Documentation/config.txt | 3 | ||||
-rw-r--r-- | Documentation/git-apply.txt | 11 | ||||
-rw-r--r-- | Documentation/git-daemon.txt | 2 | ||||
-rw-r--r-- | Documentation/git-p4.txt | 10 | ||||
-rw-r--r-- | Documentation/git-rebase.txt | 9 | ||||
-rw-r--r-- | Documentation/git-rev-parse.txt | 6 | ||||
-rw-r--r-- | Documentation/git.txt | 3 |
9 files changed, 118 insertions, 41 deletions
diff --git a/Documentation/RelNotes/1.7.11.3.txt b/Documentation/RelNotes/1.7.11.3.txt new file mode 100644 index 0000000000..64494f89d9 --- /dev/null +++ b/Documentation/RelNotes/1.7.11.3.txt @@ -0,0 +1,53 @@ +Git v1.7.11.3 Release Notes +=========================== + +Fixes since v1.7.11.3 +--------------------- + + * The error message from "git push $there :bogo" (and its equivalent + "git push $there --delete bogo") mentioned that we tried and failed + to guess what ref is being deleted based on the LHS of the refspec, + which we don't. + + * A handful of files and directories we create had tighter than + necessary permission bits when the user wanted to have group + writability (e.g. by setting "umask 002"). + + * "commit --amend" used to refuse amending a commit with an empty log + message, with or without "--allow-empty-message". + + * "git commit --amend --only --" was meant to allow "Clever" people to + rewrite the commit message without making any change even when they + have already changes for the next commit added to their index, but + it never worked as advertised since it was introduced in 1.3.0 era. + + * Even though the index can record pathnames longer than 1<<12 bytes, + in some places we were not comparing them in full, potentially + replacing index entries instead of adding. + + * "git show"'s auto-walking behaviour was an unreliable and + unpredictable hack; it now behaves just like "git log" does when it + walks. + + * "git diff", "git status" and anything that internally uses the + comparison machinery was utterly broken when the difference + involved a file with "-" as its name. This was due to the way "git + diff --no-index" was incorrectly bolted on to the system, making + any comparison that involves a file "-" at the root level + incorrectly read from the standard input. + + * We did not have test to make sure "git rebase" without extra options + filters out an empty commit in the original history. + + * "git fast-export" produced an input stream for fast-import without + properly quoting pathnames when they contain SPs in them. + + * "git checkout --detach", when you are still on an unborn branch, + should be forbidden, but it wasn't. + + * Some implementations of Perl terminates "lines" with CRLF even when + the script is operating on just a sequence of bytes. Make sure to + use "$PERL_PATH", the version of Perl the user told Git to use, in + our tests to avoid unnecessary breakages in tests. + +Also contains minor typofixes and documentation updates. diff --git a/Documentation/RelNotes/1.7.12.txt b/Documentation/RelNotes/1.7.12.txt index 067c476e3c..eddef23c71 100644 --- a/Documentation/RelNotes/1.7.12.txt +++ b/Documentation/RelNotes/1.7.12.txt @@ -22,6 +22,15 @@ UI, Workflows & Features $HOME/.config/attributes and $HOME/.config/ignore respectively when these files exist. + * Logic to disambiguate abbreviated object names have been taught to + take advantage of object types that are expected in the context, + e.g. XXXXXX in the "git describe" output v1.2.3-gXXXXXX must be a + commit object, not a blob nor a tree. This will help us prolong + the lifetime of abbreviated object names. + + * "git apply" learned to wiggle the base version and perform three-way + merge when a patch does not exactly apply to the version you have. + * Scripted Porcelain writers now have access to the credential API via the "git credential" plumbing command. @@ -51,6 +60,9 @@ UI, Workflows & Features default location where the build procedure installs them locally; the variable can even point at a http:// URL. + * "git rebase [-i] --root $tip" can now be used to rewrite all the + history leading to "$tip" down to the root commit. + * "git rebase -i" learned "-x <cmd>" to insert "exec <cmd>" after each commit in the resulting history. @@ -71,6 +83,8 @@ Foreign Interface * "mediawiki" remote helper (in contrib/) learned to handle file attachments. + * "git p4" now uses "Jobs:" and "p4 move" when appropriate. + * vcs-svn has been updated to clean-up compilation, lift 32-bit limitations, etc. @@ -95,6 +109,10 @@ Performance, Internal Implementation, etc. (please report possible regressions) fnmatch() by comparing fixed leading substring literally when possible. + * "git log -n 1 -- rarely-touched-path" was spending unnecessary + cycles after showing the first change to find the next one, only to + discard it. + Also contains minor documentation updates and code clean-ups. @@ -106,33 +124,17 @@ Unless otherwise noted, all the fixes since v1.7.11 in the maintenance releases are contained in this release (see release notes to them for details). - * "git show"'s auto-walking behaviour was an unreliable and - unpredictable hack; it now behaves just like "git log" does when it - walks. - (merge c5941f1 tr/maint-show-walk later to maint). - - * "git diff", "git status" and anything that internally uses the - comparison machinery was utterly broken when the difference - involved a file with "-" as its name. This was due to the way "git - diff --no-index" was incorrectly bolted on to the system, making - any comparison that involves a file "-" at the root level - incorrectly read from the standard input. - (merge 4682d85 jc/refactor-diff-stdin later to maint). - - * We did not have test to make sure "git rebase" without extra options - filters out an empty commit in the original history. - (merge 2b5ba7b mz/empty-rebase-test later to maint). - - * "git fast-export" produced an input stream for fast-import without - properly quoting pathnames when they contain SPs in them. - (merge ff59f6d js/fast-export-paths-with-spaces later to maint). - - * "git checkout --detach", when you are still on an unborn branch, - should be forbidden, but it wasn't. - (merge 8ced1aa cw/no-detaching-an-unborn later to maint). - - * Some implementations of Perl terminates "lines" with CRLF even when - the script is operating on just a sequence of bytes. Make sure to - use "$PERL_PATH", the version of Perl the user told Git to use, in - our tests to avoid unnecessary breakages in tests. - (merge ad78585 vr/use-our-perl-in-tests later to maint). + * When "git am" failed, old timers knew to check .git/rebase-apply/patch + to see what went wrong, but we never told the users about it. + (merge 14bf2d5 pg/maint-1.7.9-am-where-is-patch later to maint). + + * When "git submodule add" clones a submodule repository, it can get + confused where to store the resulting submodule repository in the + superproject's .git/ directory when there is a symbolic link in the + path to the current directory. + (merge 6eafa6d jl/maint-1.7.10-recurse-submodules-with-symlink later to maint). + + * In 1.7.9 era, we taught "git rebase" about the raw timestamp format + but we did not teach the same trick to "filter-branch", which rolled + a similar logic on its own. + (merge 44b85e89 jc/maint-filter-branch-epoch-date later to maint). diff --git a/Documentation/config.txt b/Documentation/config.txt index 7bc0e53848..a95e5a4ac9 100644 --- a/Documentation/config.txt +++ b/Documentation/config.txt @@ -177,6 +177,9 @@ advice.*:: Advice shown when you used linkgit:git-checkout[1] to move to the detach HEAD state, to instruct how to create a local branch after the fact. + amWorkDir:: + Advice that shows the location of the patch file when + linkgit:git-am[1] fails to apply it. -- core.fileMode:: diff --git a/Documentation/git-apply.txt b/Documentation/git-apply.txt index afd2c9ae59..634b84e4b9 100644 --- a/Documentation/git-apply.txt +++ b/Documentation/git-apply.txt @@ -9,7 +9,7 @@ git-apply - Apply a patch to files and/or to the index SYNOPSIS -------- [verse] -'git apply' [--stat] [--numstat] [--summary] [--check] [--index] +'git apply' [--stat] [--numstat] [--summary] [--check] [--index] [--3way] [--apply] [--no-add] [--build-fake-ancestor=<file>] [-R | --reverse] [--allow-binary-replacement | --binary] [--reject] [-z] [-p<n>] [-C<n>] [--inaccurate-eof] [--recount] [--cached] @@ -72,6 +72,15 @@ OPTIONS cached data, apply the patch, and store the result in the index without using the working tree. This implies `--index`. +-3:: +--3way:: + When the patch does not apply cleanly, fall back on 3-way merge if + the patch records the identity of blobs it is supposed to apply to, + and we have those blobs available locally, possibly leaving the + conflict markers in the files in the working tree for the user to + resolve. This option implies the `--index` option, and is incompatible + with the `--reject` and the `--cached` options. + --build-fake-ancestor=<file>:: Newer 'git diff' output has embedded 'index information' for each blob to help identify the original version that diff --git a/Documentation/git-daemon.txt b/Documentation/git-daemon.txt index 31b28fc29f..e8f757704c 100644 --- a/Documentation/git-daemon.txt +++ b/Documentation/git-daemon.txt @@ -204,7 +204,7 @@ receive-pack:: can push anything into the repository, including removal of refs). This is solely meant for a closed LAN setting where everybody is friendly. This service can be - enabled by `daemon.receivepack` configuration item to + enabled by setting `daemon.receivepack` configuration item to `true`. EXAMPLES diff --git a/Documentation/git-p4.txt b/Documentation/git-p4.txt index fe1f49bc6f..8228f33e3f 100644 --- a/Documentation/git-p4.txt +++ b/Documentation/git-p4.txt @@ -255,7 +255,7 @@ These options can be used to modify 'git p4 submit' behavior. p4. By default, this is the most recent p4 commit reachable from 'HEAD'. --M[<n>]:: +-M:: Detect renames. See linkgit:git-diff[1]. Renames will be represented in p4 using explicit 'move' operations. There is no corresponding option to detect copies, but there are @@ -465,13 +465,15 @@ git-p4.useClientSpec:: Submit variables ~~~~~~~~~~~~~~~~ git-p4.detectRenames:: - Detect renames. See linkgit:git-diff[1]. + Detect renames. See linkgit:git-diff[1]. This can be true, + false, or a score as expected by 'git diff -M'. git-p4.detectCopies:: - Detect copies. See linkgit:git-diff[1]. + Detect copies. See linkgit:git-diff[1]. This can be true, + false, or a score as expected by 'git diff -C'. git-p4.detectCopiesHarder:: - Detect copies harder. See linkgit:git-diff[1]. + Detect copies harder. See linkgit:git-diff[1]. A boolean. git-p4.preserveUser:: On submit, re-author changes to reflect the git author, diff --git a/Documentation/git-rebase.txt b/Documentation/git-rebase.txt index 2cab7e21ba..fd535b06ab 100644 --- a/Documentation/git-rebase.txt +++ b/Documentation/git-rebase.txt @@ -10,7 +10,7 @@ SYNOPSIS [verse] 'git rebase' [-i | --interactive] [options] [--exec <cmd>] [--onto <newbase>] [<upstream>] [<branch>] -'git rebase' [-i | --interactive] [options] [--exec <cmd>] --onto <newbase> +'git rebase' [-i | --interactive] [options] [--exec <cmd>] [--onto <newbase>] --root [<branch>] 'git rebase' --continue | --skip | --abort @@ -369,10 +369,11 @@ squash/fixup series. --root:: Rebase all commits reachable from <branch>, instead of limiting them with an <upstream>. This allows you to rebase - the root commit(s) on a branch. Must be used with --onto, and + the root commit(s) on a branch. When used with --onto, it will skip changes already contained in <newbase> (instead of - <upstream>). When used together with --preserve-merges, 'all' - root commits will be rewritten to have <newbase> as parent + <upstream>) whereas without --onto it will operate on every change. + When used together with both --onto and --preserve-merges, + 'all' root commits will be rewritten to have <newbase> as parent instead. --autosquash:: diff --git a/Documentation/git-rev-parse.txt b/Documentation/git-rev-parse.txt index 4cc3e9586f..3c63561f02 100644 --- a/Documentation/git-rev-parse.txt +++ b/Documentation/git-rev-parse.txt @@ -101,6 +101,12 @@ OPTIONS The option core.warnAmbiguousRefs is used to select the strict abbreviation mode. +--disambiguate=<prefix>:: + Show every object whose name begins with the given prefix. + The <prefix> must be at least 4 hexadecimal digits long to + avoid listing each and every object in the repository by + mistake. + --all:: Show all refs found in `refs/`. diff --git a/Documentation/git.txt b/Documentation/git.txt index 43f9a1bebd..bf22ad527c 100644 --- a/Documentation/git.txt +++ b/Documentation/git.txt @@ -44,9 +44,10 @@ unreleased) version of git, that is available from 'master' branch of the `git.git` repository. Documentation for older releases are available here: -* link:v1.7.11.2/git.html[documentation for release 1.7.11.2] +* link:v1.7.11.3/git.html[documentation for release 1.7.11.3] * release notes for + link:RelNotes/1.7.11.3.txt[1.7.11.3], link:RelNotes/1.7.11.2.txt[1.7.11.2], link:RelNotes/1.7.11.1.txt[1.7.11.1], link:RelNotes/1.7.11.txt[1.7.11]. |