A release candidate Git v1.8.4-rc4 is now available for testing
at the usual places.
The only changes since -rc3 are reversion of two topics that
introduced regressions. Hopefully the final at the end of this week
and then we will start the next cycle, most likely to be for 1.8.5.
This is a bit delayed than I planned early last week, but sometimes
real life happens.
The release tarballs are found at:
http://code.google.com/p/git-core/downloads/list
and their SHA-1 checksums are:
f390da8ea032c92c673d4cc6c4d8818379db344d git-1.8.4.rc4.tar.gz
90a9df6b2ada9a0ab9c8711e03d77244e7310c1e git-htmldocs-1.8.4.rc4.tar.gz
4e6ed2c0307ba538257bdc9f233dd574b419f411 git-manpages-1.8.4.rc4.tar.gz
The following public repositories all have a copy of the v1.8.4-rc4
tag and the master branch that the tag points at:
url = https://kernel.googlesource.com/pub/scm/git/git
url = git://repo.or.cz/alt-git.git
url = https://code.google.com/p/git-core/
url = git://git.sourceforge.jp/gitroot/git-core/git.git
url = git://git-core.git.sourceforge.net/gitroot/git-core/git-core
url = https://github.com/gitster/git
Git v1.8.4 Release Notes (draft)
Backward compatibility notes (for Git 2.0)
--
When "git push [$there]" does not say what to push, we have used the
traditional "matching" semantics so far (all your branches were sent
to the remote as long as there already are branches of the same name
over there). In Git 2.0, the default will change to the "simple"
semantics that pushes:
- only the current branch to the branch with the same name, and only
when the current branch is set to integrate with that remote
branch, if you are pushing to the same remote as you fetch from; or
- only the current branch to the branch with the same name, if you
are pushing to a remote that is not where you usually fetch from.
Use the user preference configuration variable "push.default" to
change this. If you are an old-timer who is used to the "matching"
semantics, you can set the variable to "matching" to keep the
traditional behaviour. If you want to live in the future early, you
can set it to "simple" today without waiting for Git 2.0.
When "git add -u" (and "git add -A") is run inside a subdirectory and
does not specify which paths to add on the command line, it
will operate on the entire tree in Git 2.0 for consistency
with "git commit -a" and other commands. There will be no
mechanism to make plain "git add -u" behave like "git add -u .".
Current users of "git add -u" (without a pathspec) should start
training their fingers to explicitly say "git add -u ."
before Git 2.0 comes. A warning is issued when these commands are
run without a pathspec and when you have local changes outside the
current directory, because the behaviour in Git 2.0 will be different
from today's version in such a situation.
In Git 2.0, "git add " will behave as "git add -A ", so
that "git add dir/" will notice paths you removed from the directory
and record the removal. Versions before Git 2.0, including this
release, will keep ignoring removals, but the users who rely on this
behaviour are encouraged to start using "git add --ignore-removal "
now before 2.0 is released.
Updates since v1.8.3
Foreign interfaces, subsystems and ports.
* Cygwin port has been updated for more recent Cygwin 1.7.
* "git rebase -i" now honors --strategy and -X options.
* Git-gui has been updated to its 0.18.0 version.
* MediaWiki remote helper (in contrib/) has been updated to use the
credential helper interface from Git.pm.
* Update build for Cygwin 1.[57]. Torsten Bögershausen reports that
this is fine with Cygwin 1.7 ($gmane/225824) so let's try moving it
ahead.
* The credential helper to talk to keychain on OS X (in contrib/) has
been updated to kick in not just when talking http/https but also
imap(s) and smtp.
* Remote transport helper has been updated to report errors and
maintain ref hierarchy used to keep track of its own state better.
* With "export" remote-helper protocol, (1) a push that tries to
update a remote ref whose name is different from the pushing side
does not work yet, and (2) the helper may not know how to do
--dry-run; these problematic cases are disabled for now.
* git-remote-hg/bzr (in contrib/) updates.
* git-remote-mw (in contrib/) hints users to check the certificate,
when https:// connection failed.
* git-remote-mw (in contrib/) adds a command to allow previewing the
contents locally before pushing it out, when working with a
MediaWiki remote.
UI, Workflows & Features
* Sample "post-receive-email" hook script got an enhanced replacement
"multimail" (in contrib/).
* Also in contrib/ is a new "contacts" script that runs "git blame"
to find out the people who may be interested in a set of changes.
* "git clean" command learned an interactive mode.
* The "--head" op