summaryrefslogtreecommitdiff
path: root/Documentation/RelNotes-1.7.2.txt
blob: 2dea6ffcf686b46f8c2a8c3901ad5d207f99080a (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.2 Release Notes (draft)
================================

Updates since v1.7.1
--------------------

 * The whitespace rules used in "git apply --whitespace" and "git diff"
   gained a new member in the family (tab-in-indent) to help projects with
   policy to indent only with spaces.

 * Authentication over http transport can now be made lazily, in that the
   request can first go to a URL without username, get a 401 response and
   then the client will ask for the username to use.

 * When working from a subdirectory, by default, git does not look for its
   metadirectory ".git" across filesystems, primarily to help people who
   have invocations of git in their custom PS1 prompts, as being outside
   of a git repository would look for ".git" all the way up to the root
   directory, and NFS mounts are often slow.  DISCOVERY_ACROSS_FILESYSTEM
   environment variable can be used to tell git not to stop at a
   filesystem boundary.

 * "git" wrapper learned "-c name=value" option to override configuration
   variable from the command line.

 * After "git apply --whitespace=fix" removed trailing blank lines in an
   patch in a patch series, it failed to apply later patches that depend
   on the presense of such blank lines.

 * "git checkout --orphan newbranch" is similar to "-b newbranch" but
   prepares to create a root commit that is not connected to any existing
   commit.

 * "git commit --amend" on a commit with an invalid author-name line that
   lacks the display name didn't work (fb7749e4).

 * "git cvsserver" can be told to use pserver; its password file can be
   stored outside the repository.

 * "git describe" tie-breaks tags that point at the same commit better by
   paying attention to the tagger date (newer ones are preferred).

 * The output from the textconv filter used by "git diff" can be cached to
   speed up their reuse.

 * "git diff --color" did not paint extended diff headers per line
   (i.e. the coloring escape sequence didn't end at the end of line),
   which confused "less -R".

 * "git diff --word-diff=<mode>" extends the existing "--color-words"
   option, making it more useful in color-challenged environments.

 * The regexp to detect function headers used by "git diff" for PHP has
   been enhanced for visibility modifiers (public, protected, etc.) to
   better support PHP5.

 * "git fetch" over HTTP verifies the downloaded packfiles more robustly.

 * "git for-each-ref" learned "%(objectname:short)" that gives the object
   name abbreviated.

 * Various options to "git grep" (e.g. --count, --name-only) work better
   with binary files.

 * The memory usage by "git index-pack" (run during "git fetch" and "git
   push") got leaner.

 * "git log --follow <path>" follows across copies (it used to only follow
   renames).  This may make the processing more expensive.

 * "git notes prune" learned "-n" (dry-run) and "-v" options, similar to
   what "git prune" has.

 * "git patch-id" can be fed a mbox without getting confused by the
   signature line in the format-patch output.

 * "git revert" learned --strategy option to specify the merge strategy.

 * "git send-email" learned --smtp-domain option to specify the domainname
   used in the EHLO/HELO exchange.

 * "git status [-s] --ignored" can be used to list ignored paths.

 * Various "gitweb" enhancements and clean-ups, including syntax
   highlighting.


Fixes since v1.7.1
------------------

All of the fixes in v1.7.1.X maintenance series are included in this
release, unless otherwise noted.

 * We didn't recognize timezone "Z" as a synonym for "UTC" (75b37e70).

 * In 1.7.1, "git status" stopped refreshing the index by mistake
   (e251a7b3^2).

 * We used to mistakenly think "../work" is a subdirectory of the current
   directory when we are in "../work-xyz" (490544b).

 * "git checkout" and "git rebase" overwrote paths that are marked "assume
   unchanged" (aecda37c).

 * "git clone/fetch/pull" issued an incorrect error message when a ref and
   a symref that points to the ref were updated at the same time.  This
   obviously would update them to the same value, and should not result in
   an error condition (da3efdb).

 * "git clone" did not configure remote.origin.url correctly for bare
   clones (df61c889).

 * "git diff" used to tell underlying xdiff machinery to work very hard to
   minimize the output, but this often was spending too many extra cycles
   for very little gain (582aa00).

 * "git pull" accepted "--dry-run", gave it to underlying "git fetch" but
   ignored the option itself, resulting in a bogus attempt to merge
   unrelated commit (29609e68).

 * "git reset --hard" started from a wrong directory and a working tree in
   a nonstandard location is in use got confused (560fb6a1).

 * "git stash" incorrectly lost paths in the working tree that were
   previously removed from the index (7aa5d43).

--
exec >/var/tmp/1
O=v1.7.1-336-g0925c02
echo O=$(git describe master)
git shortlog --no-merges master ^maint ^$O