| 1 | Git v1.7.1.1 Release Notes |
| 2 | ========================== |
| 3 | |
| 4 | Fixes since v1.7.1 |
| 5 | ------------------ |
| 6 | |
| 7 | * Authentication over http transport can now be made lazily, in that the |
| 8 | request can first go to a URL without username, get a 401 response and |
| 9 | then the client will ask for the username to use. |
| 10 | |
| 11 | * We used to mistakenly think "../work" is a subdirectory of the current |
| 12 | directory when we are in "../work-xyz". |
| 13 | |
| 14 | * The attribute mechanism now allows an entry that uses an attribute |
| 15 | macro that set/unset one attribute, immediately followed by an |
| 16 | overriding setting; this makes attribute macros much easier to use. |
| 17 | |
| 18 | * We didn't recognize timezone "Z" as a synonym for "UTC" (75b37e70). |
| 19 | |
| 20 | * In 1.7.0, read-tree and user commands that use the mechanism such as |
| 21 | checkout and merge were fixed to handle switching between branches one |
| 22 | of which has a file while the other has a directory at the same path |
| 23 | correctly even when there are some "confusing" pathnames in them. But |
| 24 | the algorithm used for this fix was suboptimal and had a terrible |
| 25 | performance degradation especially in larger trees. |
| 26 | |
| 27 | * "git am -3" did not show diagnosis when the patch in the message was corrupt. |
| 28 | |
| 29 | * After "git apply --whitespace=fix" removed trailing blank lines in an |
| 30 | patch in a patch series, it failed to apply later patches that depend |
| 31 | on the presence of such blank lines. |
| 32 | |
| 33 | * "git bundle --stdin" segfaulted. |
| 34 | |
| 35 | * "git checkout" and "git rebase" overwrote paths that are marked "assume |
| 36 | unchanged". |
| 37 | |
| 38 | * "git commit --amend" on a commit with an invalid author-name line that |
| 39 | lacks the display name didn't work. |
| 40 | |
| 41 | * "git describe" did not tie-break tags that point at the same commit |
| 42 | correctly; newer ones are preferred by paying attention to the |
| 43 | tagger date now. |
| 44 | |
| 45 | * "git diff" used to tell underlying xdiff machinery to work very hard to |
| 46 | minimize the output, but this often was spending too many extra cycles |
| 47 | for very little gain. |
| 48 | |
| 49 | * "git diff --color" did not paint extended diff headers per line |
| 50 | (i.e. the coloring escape sequence didn't end at the end of line), |
| 51 | which confused "less -R". |
| 52 | |
| 53 | * "git fetch" over HTTP verifies the downloaded packfiles more robustly. |
| 54 | |
| 55 | * The memory usage by "git index-pack" (run during "git fetch" and "git |
| 56 | push") got leaner. |
| 57 | |
| 58 | * "GIT_DIR=foo.git git init --bare bar.git" created foo.git instead of bar.git. |
| 59 | |
| 60 | * "git log --abbrev=$num --format='%h' ignored --abbrev=$num. |
| 61 | |
| 62 | * "git ls-files ../out/side/cwd" refused to work. |
| 63 | |
| 64 | * "git merge --log" used to replace the custom message given by "-m" with |
| 65 | the shortlog, instead of appending to it. |
| 66 | |
| 67 | * "git notes copy" without any other argument segfaulted. |
| 68 | |
| 69 | * "git pull" accepted "--dry-run", gave it to underlying "git fetch" but |
| 70 | ignored the option itself, resulting in a bogus attempt to merge |
| 71 | unrelated commit. |
| 72 | |
| 73 | * "git rebase" did not faithfully reproduce a malformed author ident, that |
| 74 | is often seen in a repository converted from foreign SCMs. |
| 75 | |
| 76 | * "git reset --hard" started from a wrong directory and a working tree in |
| 77 | a nonstandard location is in use got confused. |
| 78 | |
| 79 | * "git send-email" lacked a way to specify the domainname used in the |
| 80 | EHLO/HELO exchange, causing rejected connection from picky servers. |
| 81 | It learned --smtp-domain option to solve this issue. |
| 82 | |
| 83 | * "git send-email" did not declare a content-transfer-encoding and |
| 84 | content-type even when its payload needs to be sent in 8-bit. |
| 85 | |
| 86 | * "git show -C -C" and other corner cases lost diff metainfo output |
| 87 | in 1.7.0. |
| 88 | |
| 89 | * "git stash" incorrectly lost paths in the working tree that were |
| 90 | previously removed from the index. |
| 91 | |
| 92 | * "git status" stopped refreshing the index by mistake in 1.7.1. |
| 93 | |
| 94 | * "git status" showed excess "hints" even when advice.statusHints is set to false. |
| 95 | |
| 96 | And other minor fixes and documentation updates. |