|
|
|
GIT v1.6.1 Release Notes
|
|
|
|
========================
|
|
|
|
|
|
|
|
Updates since v1.6.0
|
|
|
|
--------------------
|
|
|
|
|
|
|
|
When some commands (e.g. "git log", "git diff") spawn pager internally, we
|
|
|
|
used to make the pager the parent process of the git command that produces
|
|
|
|
output. This meant that the exit status of the whole thing comes from the
|
|
|
|
pager, not the underlying git command. We swapped the order of the
|
|
|
|
processes around and you will see the exit code from the command from now
|
|
|
|
on.
|
|
|
|
|
|
|
|
(subsystems)
|
|
|
|
|
|
|
|
* ...
|
|
|
|
|
|
|
|
(portability)
|
|
|
|
|
|
|
|
* ...
|
|
|
|
|
|
|
|
(documentation)
|
|
|
|
|
|
|
|
* ...
|
|
|
|
|
|
|
|
(performance)
|
|
|
|
|
|
|
|
* The underlying diff machinery to produce textual output has been
|
|
|
|
optimized, which would result in faster "git blame" processing.
|
|
|
|
|
|
|
|
* Most of the test scripts (but not the ones that try to run servers)
|
|
|
|
can be run in parallel.
|
|
|
|
|
|
|
|
(usability, bells and whistles)
|
|
|
|
|
|
|
|
* "git checkout --track origin/hack" used to be a syntax error. It now
|
|
|
|
DWIMs to create a corresponding local branch "hack", i.e. acts as if you
|
|
|
|
said "git checkout --track -b hack origin/hack".
|
|
|
|
|
|
|
|
* "git cherry-pick" can also utilize rerere for conflict resolution.
|
|
|
|
|
|
|
|
* "git commit --author=$name" can look up author name from existing
|
|
|
|
commits.
|
|
|
|
|
|
|
|
* "git count-objects" reports the on-disk footprint for packfiles and
|
|
|
|
their corresponding idx files.
|
|
|
|
|
|
|
|
* "git daemon" learned --max-connections=<count> option.
|
|
|
|
|
|
|
|
* "git diff" learned to mimick --suppress-blank-empty from GNU diff via a
|
|
|
|
configuration option.
|
|
|
|
|
|
|
|
* "git diff" learned to put more sensible hunk headers for Python and
|
|
|
|
HTML contents.
|
|
|
|
|
|
|
|
* "git help" learned to use GIT_MAN_VIEWER environment variable before
|
|
|
|
using "man" program.
|
|
|
|
|
|
|
|
* "git imap-send" can optionally talk SSL.
|
|
|
|
|
|
|
|
* "git index-pack" is more careful against disk corruption while
|
|
|
|
completing a thin pack.
|
|
|
|
|
|
|
|
* "git log --check" and "git log --exit-code" passes their underlying diff
|
|
|
|
status with their exit status code.
|
|
|
|
|
|
|
|
* "git log" learned --simplify-merges, a milder variant of --full-history;
|
|
|
|
"gitk --simplify-merges" is easier to view than with --full-history.
|
|
|
|
|
|
|
|
* "git merge --squash" and "git merge --no-ff" into an unborn branch are
|
|
|
|
noticed as user errors.
|
|
|
|
|
|
|
|
* "git merge -s $strategy" can use a custom built strategy if you have a
|
|
|
|
command "git-merge-$strategy" on your $PATH.
|
|
|
|
|
|
|
|
* "git reflog expire branch" can be used in place of "git reflog expire
|
|
|
|
refs/heads/branch".
|
|
|
|
|
|
|
|
* "git submodule foreach" subcommand allows you to iterate over checked
|
|
|
|
out submodules.
|
|
|
|
|
|
|
|
* "git submodule sync" subcommands allows you to update the origin URL
|
|
|
|
recorded in submodule directories from the toplevel .gitmodules file.
|
|
|
|
|
|
|
|
(internal)
|
|
|
|
|
|
|
|
* "git hash-object" learned to lie about the path being hashed, so that
|
|
|
|
correct gitattributes processing can be done while hashing contents
|
|
|
|
stored in a temporary file.
|
|
|
|
|
|
|
|
Fixes since v1.6.0
|
|
|
|
------------------
|
|
|
|
|
|
|
|
All of the fixes in v1.6.0.X maintenance series are included in this
|
|
|
|
release, unless otherwise noted.
|
|
|
|
|
|
|
|
* "git add" and "git update-index" incorrectly allowed adding S/F when S
|
|
|
|
is a tracked symlink that points at a directory D that has a path F in
|
|
|
|
it (we still need to fix a similar nonsense when S is a submodule and F
|
|
|
|
is a path in it).
|
|
|
|
|
|
|
|
* "git diff --stdin" used to take two trees on a line and compared them,
|
|
|
|
but we droppped support for such a use case long time ago. This has
|
|
|
|
been resurrected.
|
|
|
|
|
|
|
|
* "git filter-branch" failed to rewrite a tag name with slashes in it.
|
|
|
|
|
|
|
|
* "git push --tags --all $there" failed with generic usage message without
|
|
|
|
telling saying these two options are incompatible.
|
|
|
|
|
|
|
|
--
|
|
|
|
exec >/var/tmp/1
|
|
|
|
O=v1.6.0.1-215-g9b8ae93
|
|
|
|
echo O=$(git describe master)
|
|
|
|
git shortlog --no-merges $O..master ^maint
|