1Git v1.7.6 Release Notes (draft) 2======================== 3 4Updates since v1.7.5 5-------------------- 6 7 * Various git-svn updates. 8 9 * Clean-up of the C part of i18n (but not l10n---please wait) 10 continues. 11 12 * Processes spawned by "[alias] <name> = !process" in the configuration 13 can inspect GIT_PREFIX environment variable to learn where in the 14 working tree the original command was invoked. 15 16 * "git blame" learned "--abbrev[=<n>]" option to control the minimum 17 number of hexdigits shown for commit object names. 18 19 * "git cvsimport" learned that CVSNT stores its password file in a 20 location different from the traditional CVS. 21 22 * "git diff -C -C" used to disable the rename detection entirely when 23 there are too many copy candidate paths in the tree; now it falls 24 back to "-C" when doing so would keep the copy candidate paths 25 under the rename detection limit. 26 27 * "git format-patch" learned "--quiet" option to suppress the output of 28 the names of generated files. 29 30 * "git format-patch" quotes people's names when it has RFC822 special 31 characters in it, e.g. "Junio C. Hamano" <jch@example.com>. Earlier 32 it was up to the user to do this when using its output. 33 34 * "git log" and friends learned a new "--notes" option to replace the 35 "--show-notes" option. Unlike "--show-notes", "--notes=<ref>" does 36 not imply showing the default notes. 37 38 * "git merge" learned "-" as a short-hand for "the previous branch", just 39 like the way "git checkout -" works. 40 41 * "git merge-one-file" learned to honor GIT_WORK_TREE settings when 42 handling "both sides added, differently" conflict. 43 44 * "git rev-list --count" used with "--cherry-mark" counts the cherry-picked 45 commits separately, producing more a useful output. 46 47 * "git submodule update" learned "--force" option to get rid of local 48 changes in submodules and replace them with the up-to-date version. 49 50 * Compressed tarball gitweb generates is made without the timestamp of 51 the tarball generation; snapshot from the same tree should result in 52 a same tarball. 53 54 * "git-p4" (in contrib) learned to merge a file that was added on both 55 branches differently by using 2-way merge. 56 57Also contains various documentation updates and minor miscellaneous 58changes. 59 60 61Fixes since v1.7.5 62------------------ 63 64Unless otherwise noted, all the fixes in 1.7.5.X maintenance track are 65included in this release. 66 67 * "git config" used to choke with an insanely long line. 68 (merge ef/maint-strbuf-init later) 69 70 * "git diff-files" did not show the mode information from the working 71 tree side of an unmerged path correctly. 72 (merge jc/fix-diff-files-unmerged later) 73 74 * "git diff -M --cached" used to use unmerged path as a possible rename 75 source candidate, which made no sense. 76 (merge mz/maint-rename-unmerged later) 77 78 * "git format-patch" when run with "--quiet" option used to produce a 79 nonsense result that consists of alternating empty output. 80 (merge early part of cn/format-patch-quiet later) 81 82 * "git format-patch" did not quote RFC822 special characters in the 83 email address (e.g From: Junio C. Hamano <jch@example.com>, not 84 From: "Junio C. Hamano" <jch@example.com>). 85 (merge jk/format-patch-quote-special-in-from later) 86 87 * "git mergetool" did not handle conflicted submoudules gracefully. 88 (merge jm/mergetool-submodules later) 89 90 * "git rebase -i -p" failed to preserve the history when there is a 91 redundant merge created with the --no-ff option. 92 (merge aw/maint-rebase-i-p-no-ff later) 93 94 * "git stash -p --no-keep-index" and "git stash --no-keep-index -p" now 95 mean the same thing. 96 (merge dm/stash-k-i-p later) 97 98 * "git upload-pack" (hence "git push" over git native protocol) had a 99 subtle race condition that could lead to a deadlock. 100 (merge jk/maint-upload-pack-shallow later) 101 102--- 103exec >/var/tmp/1 104echo O=$(git describe master) 105O=v1.7.5.1-216-g3970fc5 106git shortlog --no-merges ^maint ^$O master