1 Git v1.7.10 Release Notes
2 =========================
7 UI, Workflows & Features
9 * Improved handling of views, labels and branches in git-p4 (in contrib).
11 * Updated command line arguments completion script for zsh (in contrib).
13 * "vcs-svn"/"svn-fe" learned to read dumps with svn-deltas and
14 support incremental imports.
16 * "git am" learned to pass "-b" option to underlying "git mailinfo", so
17 that bracketed string other than "PATCH" at the beginning can be kept.
19 * "git clone" learned "--single-branch" option to limit cloning to a
20 single branch (surprise!).
22 * "git clone" learned to detach the HEAD in the resulting repository
23 when the source repository's HEAD does not point to a branch.
25 * The commands in the "git diff" family and "git apply --stat" that
26 count the number of files changed and the number of lines
27 inserted/deleted have been updated to match the output from
28 "diffstat". This also opens the door to i18n this line.
30 * When showing a patch while ignoring whitespace changes, the context
31 lines are taken from the postimage, in order to make it easier to
34 * "git merge" in an interactive session learned to spawn the editor
35 by default to let the user edit the auto-generated merge message,
36 to encourage people to explain their merges better. Legacy scripts
37 can export MERGE_AUTOEDIT=no to retain the historical behaviour.
39 * "gitweb" allows intermediate entries in the directory hierarchy
40 that leads to a projects to be clicked, which in turn shows the
41 list of projects inside that directory.
45 * During "git upload-pack" in respose to "git fetch", unnecessary calls
46 to parse_object() have been eliminated, to help performance in
47 repositories with excessive number of refs.
49 Internal Implementation
51 * Recursive call chains in "git index-pack" to deal with long delta
52 chains have been flattened, to reduce the stack footprint.
54 * Use of add_extra_ref() API is slowly getting removed, to make it
55 possible to cleanly restructure the overall refs API.
57 * The test suite supports the new "test_pause" helper function.
59 * t/Makefile is adjusted to prevent newer versions of GNU make from
60 running tests in seemingly random order.
62 Also contains minor documentation updates and code clean-ups.
68 Unless otherwise noted, all the fixes since v1.7.9 in the maintenance
69 releases are contained in this release (see release notes to them for
72 * "git merge --no-edit $tag" failed to honor the --no-edit option.
73 (merge 3adab6f jn/merge-no-edit-fix later to maint).
75 * The error message emitted when we see an empty loose object was
76 not phrased correctly.
77 (merge 33e42de mm/empty-loose-error-message later to maint).
79 * Many small corner case bugs on "git tag -n" was corrected.
80 (merge 31fd8d7 jk/maint-tag-show-fixes later to maint).
82 * "git commit" refused to create a commit when entries added with
83 "add -N" remained in the index, without telling Git what their content
84 in the next commit should be. We should have created the commit without
86 (merge 3f6d56d jc/maint-commit-ignore-i-t-a later to maint).
88 * Search box in "gitweb" did not accept non-ASCII characters correctly.
89 (merge 84d9e2d jn/gitweb-search-utf-8 later to maint).
91 * The code to ask for password did not fall back to the terminal
92 input when GIT_ASKPASS is set but does not work (e.g. lack of X
93 with GUI askpass helper).
94 (merge 84d7273 jk/prompt-fallback-to-tty later to maint).
96 * map_user() was not rewriting its output correctly, which resulted
97 in the user visible symptom that "git blame -e" sometimes showed
98 excess '>' at the end of email addresses.
99 (merge f026358 jc/maint-mailmap-output later to maint).
101 * "checkout -b" did not allow switching out of an unborn branch.
102 (merge abe1998 jc/checkout-out-of-unborn later to maint).
104 * "add -e" learned not to show a diff for an otherwise unmodified
105 submodule that only has uncommitted local changes in the patch
106 prepared by for the user to edit.
107 (merge 701825d js/add-e-submodule-fix later to maint).
109 * "rebase" and "commit --amend" failed to work on commits with ancient
110 timestamps near year 1970.
111 (merge 2c733fb jc/parse-date-raw later to maint).
113 * "git merge --ff-only $tag" failed because it cannot record the
114 required mergetag without creating a merge, but this is so common
115 operation for branch that is used _only_ to follow the upstream, so
116 it is allowed to fast-forward without recording the mergetag.
117 (merge b5c9f1c jc/merge-ff-only-stronger-than-signed-merge later to maint).
119 * Typo in "git branch --edit-description my-tpoic" was not diagnosed.
120 (merge c2d17ba jc/branch-desc-typoavoidance later to maint).
122 * rpmbuild noticed an unpackaged but installed *.mo file and failed.
123 (merge 3a9f58c jn/rpm-spec later to maint).
127 O=v1.7.9-249-gaa47ec9
128 echo O=$(git describe)
129 git log --first-parent --oneline ^maint $O..
131 git shortlog --no-merges ^maint $O..