diff options
Diffstat (limited to 'Documentation/RelNotes/1.7.10.txt')
-rw-r--r-- | Documentation/RelNotes/1.7.10.txt | 125 |
1 files changed, 92 insertions, 33 deletions
diff --git a/Documentation/RelNotes/1.7.10.txt b/Documentation/RelNotes/1.7.10.txt index 89edfdafc7..ae446e0c2c 100644 --- a/Documentation/RelNotes/1.7.10.txt +++ b/Documentation/RelNotes/1.7.10.txt @@ -1,27 +1,54 @@ Git v1.7.10 Release Notes ========================= -Updates since v1.7.9 --------------------- +Compatibility Notes +------------------- -UI, Workflows & Features + * From this release on, the "git merge" command in an interactive + session will start an editor when it automatically resolves the + merge for the user to explain the resulting commit, just like the + "git commit" command does when it wasn't given a commit message. - * Improved handling of views, labels and branches in git-p4 (in contrib). + If you have a script that runs "git merge" and keeps its standard + input and output attached to the user's terminal, and if you do not + want the user to explain the resulting merge commits, you can + export GIT_MERGE_AUTOEDIT environment variable set to "no", like + this: - * "git-p4" (in contrib) suffered from unnecessary merge conflicts when - p4 expanded the embedded $RCS$-like keywords; it can be now told to - unexpand them. + #!/bin/sh + GIT_MERGE_AUTOEDIT=no + export GIT_MERGE_AUTOEDIT - * Some "git-svn" updates. + to disable this behaviour (if you want your users to explain their + merge commits, you do not have to do anything). Alternatively, you + can give the "--no-edit" option to individual invocations of the + "git merge" command if you know everybody who uses your script has + Git v1.7.8 or newer. - * "vcs-svn"/"svn-fe" learned to read dumps with svn-deltas and - support incremental imports. + +Updates since v1.7.9 +-------------------- + +UI, Workflows & Features + + * Teams for localizing the messages from the Porcelain layer of + commands are starting to form, thanks to Jiang Xin who volunteered + to be the localization coordinator. An initial set of translated + messages for simplified chinese is available. * The configuration mechanism learned an "include" facility; an assignment to the include.path pseudo-variable causes the named file to be included in-place when Git looks up configuration variables. + * A content filter (clean/smudge) used to be just a way to make the + recorded contents "more useful", and allowed to fail; a filter can + new optionally be marked as "required". + + * Options whose names begin with "--no-" (e.g. the "--no-verify" + option of the "git commit" command) can be negated by omitting + "no-" from its name, e.g. "git commit --verify". + * "git am" learned to pass "-b" option to underlying "git mailinfo", so that bracketed string other than "PATCH" at the beginning can be kept. @@ -35,9 +62,19 @@ UI, Workflows & Features lines are taken from the postimage, in order to make it easier to view the output. + * "git diff --stat" learned to adjust the width of the output on + wider terminals, and give more columns to pathnames as needed. + * "diff-highlight" filter (in contrib/) was updated to produce more aesthetically pleasing output. + * "fsck" learned "--no-dangling" option to omit dangling object + information. + + * "git log -G" learned to pay attention to the "-i" option and can + find patch hunks that introduce or remove a string that matches the + given pattern ignoring the case. + * "git merge" in an interactive session learned to spawn the editor by default to let the user edit the auto-generated merge message, to encourage people to explain their merges better. Legacy scripts @@ -45,8 +82,15 @@ UI, Workflows & Features Both "git merge" and "git pull" can be given --no-edit from the command line to accept the auto-generated merge message. + * The advise message given when the user didn't give enough clue on + what to merge to "git pull" and "git merge" has been updated to + be more concise and easier to understand. + * "git push" learned the "--prune" option, similar to "git fetch". + * "git symbolic-ref" learned the "--short" option to abbreviate the + refname it shows unambiguously. + * "git tag --list" can be given "--points-at <object>" to limit its output to those that point at the given object. @@ -59,11 +103,29 @@ UI, Workflows & Features needed (including the ones that are not necessary for a specific task). + * Project search in "gitweb" shows the substring that matched in the + project name and description highlighted. + +Foreign Interface + + * Improved handling of views, labels and branches in "git-p4" (in contrib). + + * "git-p4" (in contrib) suffered from unnecessary merge conflicts when + p4 expanded the embedded $RCS$-like keywords; it can be now told to + unexpand them. + + * Some "git-svn" updates. + + * "vcs-svn"/"svn-fe" learned to read dumps with svn-deltas and + support incremental imports. + + * "git difftool/mergetool" learned to drive DeltaWalker. + Performance - * During "git upload-pack" in response to "git fetch", unnecessary calls - to parse_object() have been eliminated, to help performance in - repositories with excessive number of refs. + * Unnecessary calls to parse_object() "git upload-pack" makes in + response to "git fetch", have been eliminated, to help performance + in repositories with excessive number of refs. Internal Implementation (please report possible regressions) @@ -84,6 +146,9 @@ Internal Implementation (please report possible regressions) * t/Makefile is adjusted to prevent newer versions of GNU make from running tests in seemingly random order. + * The code to check if a path points at a file beyond a symbolic link + has been restructured to be thread-safe. + Also contains minor documentation updates and code clean-ups. @@ -94,27 +159,21 @@ Unless otherwise noted, all the fixes since v1.7.9 in the maintenance releases are contained in this release (see release notes to them for details). - * The bulk check-in codepath streamed contents that needs - smudge/clean filters without running them, instead of punting and - delegating to the codepath to run filters after slurping everything - to core. - (merge 4f22b10 jk/maint-avoid-streaming-filtered-contents later to maint). - - * When the filter driver exits before reading the content before the - main git process writes the contents to be filtered to the pipe to - it, the latter could be killed with SIGPIPE instead of ignoring - such an event as an error. - (merge 6424c2a jb/filter-ignore-sigpipe later to maint). + * "git bundle" did not record boundary commits correctly when there + are many of them. + (merge efe4be1 tr/maint-bundle-boundary later to maint). - * When a remote helper exits before reading the blank line from the - main git process to signal the end of commands, the latter could be - killed with SIGPIPE. Instead we should ignore such event as a - non-error. - (merge c34fe63 sp/smart-http-failure-to-push later to maint). + * "git diff-index" and its friends at the plumbing level showed the + "diff --git" header and nothing else for a path whose cached stat + info is dirty without actual difference when asked to produce a + patch. This was a longstanding bug that we could have fixed long + time ago. + (merge b3f01ff jc/maint-diff-patch-header later to maint). - * "git bundle create" produced a corrupt bundle file upon seeing - commits with excessively long subject line. - (merge 8a557bb tr/maint-bundle-long-subject later to maint). + * The code to synthesize the fake ancestor tree used by 3-way merge + fallback in "git am" was not prepared to read a patch created with + a non-standard -p<num> value. + (merge a61ba26 jc/am-3-nonstandard-popt later to maint). * "gitweb" used to drop warnings in the log file when "heads" view is accessed in a repository whose HEAD does not point at a valid @@ -122,7 +181,7 @@ details). --- exec >/var/tmp/1 -O=v1.7.9.2-301-g507fba2 +O=v1.7.9.3-366-g1e4d087 echo O=$(git describe) git log --first-parent --oneline ^maint $O.. echo |