summaryrefslogtreecommitdiff
path: root/Documentation/RelNotes/1.7.10.txt
blob: 0be3d3af310470304952604a3e097d1e023ad308 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
Git v1.7.10 Release Notes
=========================

Updates since v1.7.9
--------------------

UI, Workflows & Features

 * Improved handling of views, labels and branches in git-p4 (in contrib).

 * Updated command line arguments completion script for zsh (in contrib).

 * "vcs-svn"/"svn-fe" learned to read dumps with svn-deltas and
   support incremental imports.

 * "git am" learned to pass "-b" option to underlying "git mailinfo", so
   that bracketed string other than "PATCH" at the beginning can be kept.

 * "git clone" learned "--single-branch" option to limit cloning to a
   single branch (surprise!).

 * "git clone" learned to detach the HEAD in the resulting repository
   when the source repository's HEAD does not point to a branch.

 * The commands in the "git diff" family and "git apply --stat" that
   count the number of files changed and the number of lines
   inserted/deleted have been updated to match the output from
   "diffstat".  This also opens the door to i18n this line.

 * When showing a patch while ignoring whitespace changes, the context
   lines are taken from the postimage, in order to make it easier to
   view the output.

 * "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
   can export MERGE_AUTOEDIT=no to retain the historical behaviour.

 * "gitweb" allows intermediate entries in the directory hierarchy
   that leads to a projects to be clicked, which in turn shows the
   list of projects inside that directory.

Performance

 * During "git upload-pack" in respose to "git fetch", unnecessary calls
   to parse_object() have been eliminated, to help performance in
   repositories with excessive number of refs.

Internal Implementation

 * Recursive call chains in "git index-pack" to deal with long delta
   chains have been flattened, to reduce the stack footprint.

 * Use of add_extra_ref() API is slowly getting removed, to make it
   possible to cleanly restructure the overall refs API.

 * The test suite supports the new "test_pause" helper function.

 * t/Makefile is adjusted to prevent newer versions of GNU make from
   running tests in seemingly random order.

Also contains minor documentation updates and code clean-ups.


Fixes since v1.7.9
------------------

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).

 * "git merge --no-edit $tag" failed to honor the --no-edit option.
   (merge 3adab6f jn/merge-no-edit-fix later to maint).

 * The error message emitted when we see an empty loose object was
   not phrased correctly.
   (merge 33e42de mm/empty-loose-error-message later to maint).

 * Many small corner case bugs on "git tag -n" was corrected.
   (merge 31fd8d7 jk/maint-tag-show-fixes later to maint).

 * "git commit" refused to create a commit when entries added with
   "add -N" remained in the index, without telling Git what their content
   in the next commit should be. We should have created the commit without
   these paths.
   (merge 3f6d56d jc/maint-commit-ignore-i-t-a later to maint).

 * Search box in "gitweb" did not accept non-ASCII characters correctly.
   (merge 84d9e2d jn/gitweb-search-utf-8 later to maint).

 * The code to ask for password did not fall back to the terminal
   input when GIT_ASKPASS is set but does not work (e.g. lack of X
   with GUI askpass helper).
   (merge 84d7273 jk/prompt-fallback-to-tty later to maint).

 * map_user() was not rewriting its output correctly, which resulted
   in the user visible symptom that "git blame -e" sometimes showed
   excess '>' at the end of email addresses.
   (merge f026358 jc/maint-mailmap-output later to maint).

 * "checkout -b" did not allow switching out of an unborn branch.
    (merge abe1998 jc/checkout-out-of-unborn later to maint).

 * "add -e" learned not to show a diff for an otherwise unmodified
   submodule that only has uncommitted local changes in the patch
   prepared by for the user to edit.
   (merge 701825d js/add-e-submodule-fix later to maint).

 * "rebase" and "commit --amend" failed to work on commits with ancient
   timestamps near year 1970.
   (merge 2c733fb jc/parse-date-raw later to maint).

 * "git merge --ff-only $tag" failed because it cannot record the
   required mergetag without creating a merge, but this is so common
   operation for branch that is used _only_ to follow the upstream, so
   it is allowed to fast-forward without recording the mergetag.
   (merge b5c9f1c jc/merge-ff-only-stronger-than-signed-merge later to maint).

 * Typo in "git branch --edit-description my-tpoic" was not diagnosed.
   (merge c2d17ba jc/branch-desc-typoavoidance later to maint).

 * rpmbuild noticed an unpackaged but installed *.mo file and failed.
   (merge 3a9f58c jn/rpm-spec later to maint).

---
exec >/var/tmp/1
O=v1.7.9-249-gaa47ec9
echo O=$(git describe)
git log --first-parent --oneline ^maint $O..
echo
git shortlog --no-merges ^maint $O..