1 Git v1.7.4 Release Notes (draft)
2 ================================
7 * The documentation Makefile now assumes by default asciidoc 8 and
8 docbook-xsl >= 1.73. If you have older versions, you can set
9 ASCIIDOC7 and ASCIIDOC_ROFF, respectively.
11 * The option parsers of various commands that create new branch (or
12 rename existing ones to a new name) were too loose and users were
13 allowed to call a branch with a name that begins with a dash by
14 creative abuse of their command line options, which only lead to
15 burn themselves. The name of a branch cannot begin with a dash
18 * System-wide fallback default attributes can be stored in
19 /etc/gitattributes; core.attributesfile configuration variable can
20 be used to customize the path to this file.
22 * The thread structure generated by "git send-email" has changed
23 slightly. Setting the cover letter of the latest series as a reply
24 to the cover letter of the previous series with --in-reply-to used
25 to make the new cover letter and all the patches replies to the
26 cover letter of the previous series; this has been changed to make
27 the patches in the new series replies to the new cover letter.
29 * Bash completion script in contrib/ has been adjusted to be also
32 * "git blame" learned --show-email option to display the e-mail
33 addresses instead of the names of authors.
35 * "git daemon" can be built in MinGW environment.
37 * "git daemon" can take more than one --listen option to listen to
40 * "git diff" and "git grep" learned how functions and subroutines
43 * "git mergetool" tells vim/gvim to show three-way diff by default
44 (use vimdiff2/gvimdiff2 as the tool name for old behaviour).
46 * "git log -G<pattern>" limits the output to commits whose change has
47 added or deleted lines that match the given pattern.
49 * "git read-tree" with no argument as a way to empty the index is
50 deprecated; we might want to remove it in the future. Users can
51 use the new --empty option to be more explicit instead.
53 * "git repack -f" does not spend cycles to recompress objects in the
54 non-delta representation anymore (use -F if you really mean it when
55 e.g. you changed the compression level).
57 * "git merge --log" used to limit the resulting merge log to 20
58 entries; this is now customizable by giving e.g. "--log=47".
60 * "git merge" may work better when all files were moved out of a
61 directory in one branch while a new file is created in place of that
62 directory in the other branch.
64 * "git rebase --autosquash" can use SHA-1 object names to name which
65 commit to fix up (e.g. "fixup! e83c5163").
67 * The default "recursive" merge strategy learned --rename-threshold
68 option to influence the rename detection, similar to the -M option
69 of "git diff". E.g. "git merge -Xrename-threshold=50% ..." to use
72 * The "recursive" strategy also learned to ignore various whitespace
73 changes; the most notable is -Xignore-space-at-eol.
75 * "git send-email" learned "--to-cmd", similar to "--cc-cmd", to read
76 recipient list from a command output.
78 * "git send-email" learned to read and use "To:" from its input files.
80 * you can extend "git shell", which is often used on boxes that allow
81 git-only login over ssh as login shell, with custom set of
84 * "git submodule sync" updates metainformation for all submodules,
85 not just the ones that have been checked out.
87 * gitweb can use custom 'highlight' command with its configuration file.
90 Also contains various documentation updates.
96 All of the fixes in v1.7.3.X maintenance series are included in this
97 release, unless otherwise noted.
99 * "git checkout" removed an untracked file "foo" from the working
100 tree when switching to a branch that contains a tracked path
101 "foo/bar". Prevent this, just like the case where the conflicting
102 path were "foo" (c752e7f..7980872d).
104 * "git log --author=me --author=her" did not find commits written by
105 me or by her; instead it looked for commits written by me and by
106 her, which is impossible.
108 * "git merge" into an unborn branch removed an untracked file "foo"
109 from the working tree when merged branch had "foo" (2caf20c..172b642).
111 * "git push --progress" shows progress indicators now.
113 * "git repack" places its temporary packs under $GIT_OBJECT_DIRECTORY/pack
114 instead of $GIT_OBJECT_DIRECTORY/ to avoid cross directory renames.
116 * "git submodule update --recursive --other-flags" passes flags down
117 to its subinvocations.
121 O=v1.7.3.2-450-g5b9c331
122 echo O=$(git describe master)
123 git shortlog --no-merges ^maint ^$O master