First batch for 2.6
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Junio C Hamano committed
Aug 3, 2015 at 11:19 UTC
eb67052b132cc6ebfeed78fc74d2e4ef40390e7f
3 files changed
+156
-2
Documentation/RelNotes/2.6.0.txt
new
+154
@@ -0,0 +1,154 @@
1
+Git 2.6 Release Notes
2
+=====================
3
+
4
+Updates since v2.5
5
+------------------
6
+
7
+UI, Workflows & Features
8
+
9
+ * An asterisk as a substring (as opposed to the entirety) of a path
10
+ component for both side of a refspec, e.g.
11
+ "refs/heads/o*:refs/remotes/heads/i*", is now allowed.
12
+
13
+ * New userdiff pattern definition for fountain screenwriting markup
14
+ format has been added.
15
+
16
+ * "git log" and friends learned a new "--date=format:..." option to
17
+ format timestamps using system's strftime(3).
18
+
19
+ * "git fast-import" learned to respond to the get-mark command via
20
+ its cat-blob-fd interface.
21
+
22
+ * "git rebase -i" learned "drop commit-object-name subject" command
23
+ as another way to skip replaying of a commit.
24
+
25
+ * A new configuration variable can enable "--follow" automatically
26
+ when "git log" is run with one pathspec argument.
27
+
28
+ * "git status" learned to show a more detailed information regarding
29
+ the "rebase -i" session in progress.
30
+
31
+ * "git cat-file" learned "--batch-all-objects" option to enumerate all
32
+ available objects in the repository more quickly than "rev-list
33
+ --all --objects" (the output includes unreachable objects, though).
34
+
35
+ * "git fsck" learned to ignore errors on a set of known-to-be-bad
36
+ objects, and also allows the warning levels of various kinds of
37
+ non-critical breakages to be tweaked.
38
+
39
+ * "git rebase -i"'s list of todo is made configurable.
40
+
41
+ * "git send-email" now performs alias-expansion on names that are
42
+ given via --cccmd, etc.
43
+
44
+ * An environment variable GIT_REPLACE_REF_BASE tells Git to look into
45
+ refs hierarchy other than refs/replace/ for the object replacement
46
+ data.
47
+
48
+
49
+Performance, Internal Implementation, Development Support etc.
50
+
51
+ * In preparation for allowing different "backends" to store the refs
52
+ in a way different from the traditional "one ref per file in
53
+ $GIT_DIR or in a $GIT_DIR/packed-refs file" filesystem storage,
54
+ direct filesystem access to ref-like things like CHERRY_PICK_HEAD
55
+ from scripts and programs has been reduced.
56
+
57
+ * Computation of untracked status indicator by bash prompt
58
+ script (in contrib/) has been optimized.
59
+
60
+ * Memory use reduction when commit-slab facility is used to annotate
61
+ sparsely (which is not recommended in the first place).
62
+
63
+ * Clean up refs API and make "git clone" less intimate with the
64
+ implementation detail.
65
+
66
+ * "git pull" was reimplemented in C.
67
+
68
+ * The packet tracing machinery allows to capture an incoming pack
69
+ data to a file for debugging.
70
+
71
+ * Move machinery to parse human-readable scaled numbers like 1k, 4M,
72
+ and 2G as an option parameter's value from pack-objects to
73
+ parse-options API, to make it available to other codepaths.
74
+
75
+ * "git verify-tag" and "git verify-commit" have been taught to share
76
+ more code, and then learned to optionally show the verification
77
+ message from the underlying GPG implementation.
78
+
79
+ * Various enhancements around "git am" reading patches generated by
80
+ foreign SCM have been made.
81
+
82
+ * Ref listing by "git branch -l" and "git tag -l" commands has
83
+ started to be rebuilt, based on the for-each-ref machinery.
84
+
85
+
86
+Also contains various documentation updates and code clean-ups.
87
+
88
+
89
+Fixes since v2.5
90
+----------------
91
+
92
+Unless otherwise noted, all the fixes since v2.5 in the maintenance
93
+track are contained in this release (see the maintenance releases'
94
+notes for details).
95
+
96
+ * "git subtree" (in contrib/) depended on "git log" output to be
97
+ stable, which was a no-no. Apply a workaround to force a
98
+ particular date format.
99
+ (merge e7aac44 da/subtree-date-confusion later to maint).
100
+
101
+ * An attempt to delete a ref by pushing into a repositorywhose HEAD
102
+ symbolic reference points at an unborn branch that cannot be
103
+ created due to ref D/F conflict (e.g. refs/heads/a/b exists, HEAD
104
+ points at refs/heads/a) failed.
105
+ (merge b112b14 jx/do-not-crash-receive-pack-wo-head later to maint).
106
+
107
+ * The low-level "git send-pack" did not honor 'user.signingkey'
108
+ configuration variable when sending a signed-push.
109
+ (merge d830d39 db/send-pack-user-signingkey later to maint).
110
+
111
+ * "sparse checkout" misbehaved for a path that is excluded from the
112
+ checkout when switching between branches that differ at the path.
113
+ (merge 7d78241 as/sparse-checkout-removal later to maint).
114
+
115
+ * An experimental "untracked cache" feature used uname(2) in a
116
+ slightly unportable way.
117
+ (merge 100e433 cb/uname-in-untracked later to maint).
118
+
119
+ * A "rebase" replays changes of the local branch on top of something
120
+ else, as such they are placed in stage #3 and referred to as
121
+ "theirs", while the changes in the new base, typically a foreign
122
+ work, are placed in stage #2 and referred to as "ours". Clarify
123
+ the "checkout --ours/--theirs".
124
+ (merge f303016 se/doc-checkout-ours-theirs later to maint).
125
+
126
+ * The "rev-parse --parseopt" mode parsed the option specification
127
+ and the argument hint in a strange way to allow '=' and other
128
+ special characters in the option name while forbidding them from
129
+ the argument hint. This made it impossible to define an option
130
+ like "--pair <key>=<value>" with "pair=key=value" specification,
131
+ which instead would have defined a "--pair=key <value>" option.
132
+ (merge 2d893df ib/scripted-parse-opt-better-hint-string later to maint).
133
+
134
+ * Often a fast-import stream builds a new commit on top of the
135
+ previous commit it built, and it often unconditionally emits a
136
+ "from" command to specify the first parent, which can be omitted in
137
+ such a case. This caused fast-import to forget the tree of the
138
+ previous commit and then re-read it from scratch, which was
139
+ inefficient. Optimize for this common case.
140
+ (merge 0df3245 mh/fast-import-optimize-current-from later to maint).
141
+
142
+ * Running an aliased command from a subdirectory when the .git thing
143
+ in the working tree is a gitfile pointing elsewhere did not work.
144
+ (merge d95138e nd/export-worktree later to maint).
145
+
146
+ * "Is this subdirectory a separate repository that should not be
147
+ touched?" check "git clean" was inefficient. This was replaced
148
+ with a more optimized check.
149
+ (merge 38ae878 ee/clean-remove-dirs later to maint).
150
+
151
+ * Code cleanups and documentation updates.
152
+ (merge 1c601af es/doc-clean-outdated-tools later to maint).
153
+ (merge 3581304 kn/tag-doc-fix later to maint).
154
+ (merge 3a59e59 kb/i18n-doc later to maint).
GIT-VERSION-GEN
+1
-1
@@ -1,7 +1,7 @@
1
#!/bin/sh
2
3
GVF=GIT-VERSION-FILE
4
-DEF_VER=v2.5.0
4
+DEF_VER=v2.5.0.GIT
5
6
LF='
7
'
RelNotes
+1
-1
@@ -1 +1 @@
1
-Documentation/RelNotes/2.5.0.txt
\ No newline at end of file
1
+Documentation/RelNotes/2.6.0.txt
\ No newline at end of file