Update draft release notes to 1.8.2

Split the backward-compatibility notes into two sections, the ones that affect this release, and the other to describe changes meant for Git 2.0. The latter gives a context to understand why the changes for this release is necessary. Signed-off-by: Junio C Hamano <gitster@pobox.com>

Junio C Hamano committed Mar 8, 2013 at 14:14 UTC 3e714cdbab0387984e918aac2ad460abbd0ba1c9
1 file changed +34 -26
Documentation/RelNotes/1.8.2.txt
+34 -26
@@ -1,19 +1,8 @@
1 Git v1.8.2 Release Notes
2 ========================
3
4 -Backward compatibility notes
5 -----------------------------
6 -
7 -In the next major release Git 2.0 (not *this* one), we will change the
8 -behavior of the "git push" command.
9 -
10 -When "git push [$there]" does not say what to push, we have used the
11 -traditional "matching" semantics so far (all your branches were sent
12 -to the remote as long as there already are branches of the same name
13 -over there). We will use the "simple" semantics that pushes the
14 -current branch to the branch with the same name, only when the current
15 -branch is set to integrate with that remote branch. There is a user
16 -preference configuration variable "push.default" to change this.
4 +Backward compatibility notes (this release)
5 +-------------------------------------------
6
7 "git push $there tag v1.2.3" used to allow replacing a tag v1.2.3
8 that already exists in the repository $there, if the rewritten tag
@@ -22,22 +11,41 @@ that the old tag v1.2.3 points at. This was found to be error prone
11 and starting with this release, any attempt to update an existing
12 ref under refs/tags/ hierarchy will fail, without "--force".
13
25 -When "git add -u" and "git add -A", that does not specify what paths
26 -to add on the command line, is run from inside a subdirectory, the
14 +When "git add -u" and "git add -A" that does not specify what paths
15 +to add on the command line is run from inside a subdirectory, the
16 scope of the operation has always been limited to the subdirectory.
17 Many users found this counter-intuitive, given that "git commit -a"
18 and other commands operate on the entire tree regardless of where you
30 -are. In this release, these commands give warning in such a case and
31 -encourage the user to say "git add -u/-A ." instead when restricting
32 -the scope to the current directory.
33 -
34 -At Git 2.0 (not *this* one), we plan to change these commands without
35 -pathspec to operate on the entire tree. Forming a habit to type "."
36 -when you mean to limit the command to the current working directory
37 -will protect you against the planned future change, and that is the
38 -whole point of the new message (there will be no configuration
39 -variable to squelch this warning---it goes against the "habit forming"
40 -objective).
19 +are. In this release, these commands give a warning message that
20 +suggests the users to use "git add -u/-A ." when they want to limit
21 +the scope to the current directory; doing so will squelch the message,
22 +while training their fingers.
23 +
24 +
25 +Backward compatibility notes (for Git 2.0)
26 +------------------------------------------
27 +
28 +When "git push [$there]" does not say what to push, we have used the
29 +traditional "matching" semantics so far (all your branches were sent
30 +to the remote as long as there already are branches of the same name
31 +over there). In Git 2.0, the default will change to the "simple"
32 +semantics that pushes the current branch to the branch with the same
33 +name, only when the current branch is set to integrate with that
34 +remote branch. There is a user preference configuration variable
35 +"push.default" to change this. If you are an old-timer who is used
36 +to the "matching" semantics, you can set it to "matching" to keep the
37 +traditional behaviour. If you want to live in the future early,
38 +you can set it to "simple" today without waiting for Git 2.0.
39 +
40 +When "git add -u" and "git add -A", that does not specify what paths
41 +to add on the command line is run from inside a subdirectory, these
42 +commands will operate on the entire tree in Git 2.0 for consistency
43 +with "git commit -a" and other commands. Because there will be no
44 +mechanism to make "git add -u" behave as if "git add -u .", it is
45 +important for those who are used to "git add -u" (without pathspec)
46 +updating the index only for paths in the current subdirectory to start
47 +training their fingers to explicitly say "git add -u ." when they mean
48 +it before Git 2.0 comes.
49
50
51 Updates since v1.8.1