| 1 | Git v1.9.2 Release Notes |
| 2 | ======================== |
| 3 | |
| 4 | Fixes since v1.9.1 |
| 5 | ------------------ |
| 6 | |
| 7 | * Documentation and in-code comments had many instances of mistaken |
| 8 | use of "nor", which have been corrected. |
| 9 | |
| 10 | * "git fetch --prune", when the right-hand-side of multiple fetch |
| 11 | refspecs overlap (e.g. storing "refs/heads/*" to |
| 12 | "refs/remotes/origin/*", while storing "refs/frotz/*" to |
| 13 | "refs/remotes/origin/fr/*"), aggressively thought that lack of |
| 14 | "refs/heads/fr/otz" on the origin site meant we should remove |
| 15 | "refs/remotes/origin/fr/otz" from us, without checking their |
| 16 | "refs/frotz/otz" first. |
| 17 | |
| 18 | Note that such a configuration is inherently unsafe (think what |
| 19 | should happen when "refs/heads/fr/otz" does appear on the origin |
| 20 | site), but that is not a reason not to be extra careful. |
| 21 | |
| 22 | * "git update-ref --stdin" did not fail a request to create a ref |
| 23 | when the ref already existed. |
| 24 | |
| 25 | * "git diff --no-index -Mq a b" fell into an infinite loop. |
| 26 | |
| 27 | * When it is not necessary to edit a commit log message (e.g. "git |
| 28 | commit -m" is given a message without specifying "-e"), we used to |
| 29 | disable the spawning of the editor by overriding GIT_EDITOR, but |
| 30 | this means all the uses of the editor, other than to edit the |
| 31 | commit log message, are also affected. |
| 32 | |
| 33 | * "git status --porcelain --branch" showed its output with labels |
| 34 | "ahead/behind/gone" translated to the user's locale. |
| 35 | |
| 36 | * "git mv" that moves a submodule forgot to adjust the array that |
| 37 | uses to keep track of which submodules were to be moved to update |
| 38 | its configuration. |
| 39 | |
| 40 | * Length limit for the pathname used when removing a path in a deep |
| 41 | subdirectory has been removed to avoid buffer overflows. |
| 42 | |
| 43 | * The test helper lib-terminal always run an actual test_expect_* |
| 44 | when included, which screwed up with the use of skil-all that may |
| 45 | have to be done later. |
| 46 | |
| 47 | * "git index-pack" used a wrong variable to name the keep-file in an |
| 48 | error message when the file cannot be written or closed. |
| 49 | |
| 50 | * "rebase -i" produced a broken insn sheet when the title of a commit |
| 51 | happened to contain '\n' (or ended with '\c') due to a careless use |
| 52 | of 'echo'. |
| 53 | |
| 54 | * There were a few instances of 'git-foo' remaining in the |
| 55 | documentation that should have been spelled 'git foo'. |
| 56 | |
| 57 | * Serving objects from a shallow repository needs to write a |
| 58 | new file to hold the temporary shallow boundaries but it was not |
| 59 | cleaned when we exit due to die() or a signal. |
| 60 | |
| 61 | * When "git stash pop" stops after failing to apply the stash |
| 62 | (e.g. due to conflicting changes), the stash is not dropped. State |
| 63 | that explicitly in the output to let the users know. |
| 64 | |
| 65 | * The labels in "git status" output that describe the nature of |
| 66 | conflicts (e.g. "both deleted") were limited to 20 bytes, which was |
| 67 | too short for some l10n (e.g. fr). |