1Git v1.7.7 Release Notes 2======================== 3 4Updates since v1.7.6 5-------------------- 6 7 * The scripting part of the codebase is getting prepared for i18n/l10n. 8 9 * Interix, Cygwin and Minix ports got updated. 10 11 * A handful of patches to update git-p4 (in contrib/). 12 13 * Gitweb learned to read from /etc/gitweb-common.conf when it exists, 14 before reading from gitweb_config.perl or from /etc/gitweb.conf 15 (this last one is read only when per-repository gitweb_config.perl 16 does not exist). 17 18 * Various codepaths that invoked zlib deflate/inflate assumed that these 19 functions can compress or uncompress more than 4GB data in one call on 20 platforms with 64-bit long, which has been corrected. 21 22 * "git archive" can be told to pass the output to gzip compression and 23 produce "archive.tar.gz". 24 25 * "git checkout" (both the code to update the files upon checking out a 26 different branch, the code to checkout specific set of files) learned 27 to stream the data from object store when possible, without having to 28 read the entire contents of a file in memory first. An earlier round 29 of this code that is not in any released version had a large leak but 30 now it has been plugged. 31 32 * "git clone" can now take "--config key=value" option to set the 33 repository configuration options that affect the initial checkout. 34 35 * "git commit <paths>..." now lets you feed relative pathspecs that 36 refer outside your current subdirectory. 37 38 * "git diff --stat" learned --stat-count option to limit the output of 39 diffstat report. 40 41 * "git fetch", "git push" and friends no longer show connection 42 errors for addresses that couldn't be connected when at least one 43 address succeeds (this is arguably a regression but a deliberate 44 one). 45 46 * "git grep" learned --break and --heading options, to let users mimic 47 output format of "ack". 48 49 * "git grep" learned "-W" option that shows wider context using the same 50 logic used by "git diff" to determine the hunk header. 51 52 * "git rebase master topci" no longer spews usage hints after giving 53 "fatal: no such branch: topci" error message. 54 55 * "git stash" learned --include-untracked option. 56 57 * "git submodule update" used to stop at the first error updating a 58 submodule; it now goes on to update other submodules that can be 59 updated, and reports the ones with errors at the end. 60 61 * "git verify-pack" has been rewritten to use the "index-pack" machinery 62 that is more efficient in reading objects in packfiles. 63 64 * test scripts for gitweb tried to run even when CGI-related perl modules 65 are not installed; it now exits early when they are unavailable. 66 67Also contains various documentation updates and minor miscellaneous 68changes. 69 70 71Fixes since v1.7.6 72------------------ 73 74Unless otherwise noted, all the fixes in 1.7.6.X maintenance track are 75included in this release. 76 77 * "git checkout -b <branch>" sometimes wrote a bogus reflog entry, 78 causing later "git checkout -" fail. 79 (merge 71ee7fd jc/checkout-reflog-fix~1 later). 80 81 * "git diff --cc" learned to correctly ignore binary files. 82 (merge 0508fe5 jk/combine-diff-binary-etc later) 83 84 * "git fast-export" forgot to quote pathnames with unsafe characters 85 in its output. 86 (merge 6280dfd jk/fast-export-quote-path later) 87 88 * "git fetch" did not recurse into submodules in subdirectories. 89 (merge ea2d325 jl/maint-fetch-recursive-fix later) 90 91 * "git ls-tree" did not error out when asked to show a corrupt tree. 92 (merge 04f8925 js/ls-tree-error later) 93 94 * "git pull" without any argument left an extra whitespace after the 95 command name in its reflog. 96 (merge c98d1e4 oa/pull-reflog later) 97 98 * "git rebase -i -p" incorrectly dropped commits from side branches. 99 (merge 12bf828 aw/rebase-i-p later) 100 101 * "git reset [<commit>] paths..." did not reset the index entry correctly 102 for unmerged paths. 103 (merge ff00b682 jc/maint-reset-unmerged-path later) 104 105 * "git submodule add" did not allow a relative repository path when 106 the superproject did not have any default remote url. 107 (merge f22a17e8 jl/submodule-add-relurl-wo-upstream later) 108 109 * "git submodule foreach" failed to correctly give the standard input to 110 the user-supplied command it invoked. 111 (merge 4dca1aa bc/submodule-foreach-stdin-fix-1.7.4 later) 112 113 * "git submodule update --quiet" was not really quiet. 114 (merge 7e60407 jl/submodule-update-quiet later) 115 116 * submodules that the user has never showed interest in by running 117 "git submodule init" was incorrectly marked as interesting by "git 118 submodule sync". 119 (merge 2cd9de3 jc/submodule-sync-no-auto-vivify later) 120 121 * "git tag -l <glob>..." did not take multiple glob patterns from the 122 command line. 123 (merge 588d0e8 jk/tag-list-multiple-patterns later) 124 125-- 126exec >/var/tmp/1 127echo O=$(git describe master) 128O=v1.7.6-446-g0af53e1 129git log --first-parent --oneline $O..master 130echo 131git shortlog --no-merges ^maint ^$O master