1
0
Fork 0
mirror of https://github.com/git/git.git synced 2024-11-05 00:37:55 +01:00
git/Documentation/RelNotes/1.7.4.txt
Junio C Hamano 0d181cbb8a Merge branch 'jk/asciidoc-update'
* jk/asciidoc-update:
  docs: default to more modern toolset
2010-12-12 21:49:51 -08:00

123 lines
4.7 KiB
Text

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