[ANNOUNCE] Git v2.5.1
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Aug 28, 2015, 21:12 UTC
- Message-ID
- <xmqqwpwfyv6h.fsf@gitster.mtv.corp.google.com>
The latest maintenance release Git v2.5.1 is now available at the usual places.
The tarballs are found at:
https://www.kernel.org/pub/software/scm/git/
The following public repositories all have a copy of the 'v2.5.1' tag and the 'maint' branch that the tag points at:
url = https://kernel.googlesource.com/pub/scm/git/git url = git://repo.or.cz/alt-git.git 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
Note that code.google.com/ has gone into read-only mode and the branches and tags there will not be updated.
----------------------------------------------------------------
Git v2.5.1 Release Notes ========================
Fixes since v2.5 ----------------
* Running an aliased command from a subdirectory when the .git thing in the working tree is a gitfile pointing elsewhere did not work.
* Often a fast-import stream builds a new commit on top of the previous commit it built, and it often unconditionally emits a "from" command to specify the first parent, which can be omitted in such a case. This caused fast-import to forget the tree of the previous commit and then re-read it from scratch, which was inefficient. Optimize for this common case.
* The "rev-parse --parseopt" mode parsed the option specification and the argument hint in a strange way to allow '=' and other special characters in the option name while forbidding them from the argument hint. This made it impossible to define an option like "--pair <key>=<value>" with "pair=key=value" specification, which instead would have defined a "--pair=key <value>" option.
* A "rebase" replays changes of the local branch on top of something else, as such they are placed in stage #3 and referred to as "theirs", while the changes in the new base, typically a foreign work, are placed in stage #2 and referred to as "ours". Clarify the "checkout --ours/--theirs".
* An experimental "untracked cache" feature used uname(2) in a slightly unportable way.
* "sparse checkout" misbehaved for a path that is excluded from the checkout when switching between branches that differ at the path.
* The low-level "git send-pack" did not honor 'user.signingkey' configuration variable when sending a signed-push.
* An attempt to delete a ref by pushing into a repository whose HEAD symbolic reference points at an unborn branch that cannot be created due to ref D/F conflict (e.g. refs/heads/a/b exists, HEAD points at refs/heads/a) failed.
* "git subtree" (in contrib/) depended on "git log" output to be stable, which was a no-no. Apply a workaround to force a particular date format.
* "git clone $URL" in recent releases of Git contains a regression in the code that invents a new repository name incorrectly based on the $URL. This has been corrected. (merge db2e220 jk/guess-repo-name-regression-fix later to maint).
* Running tests with the "-x" option to make them verbose had some unpleasant interactions with other features of the test suite. (merge 9b5fe78 jk/test-with-x later to maint).
* "git pull" in recent releases of Git has a regression in the code that allows custom path to the --upload-pack=<program>. This has been corrected.
* pipe() emulation used in Git for Windows looked at a wrong variable when checking for an error from an _open_osfhandle() call.
Also contains typofixes, documentation updates and trivial code clean-ups.
----------------------------------------------------------------
Changes since v2.5.0 are as follows:
Charles Bailey (1):
untracked: fix detection of uname(2) failureDavid Aguilar (1):
contrib/subtree: ignore log.date configurationDavid Turner (1):
unpack-trees: don't update files with CE_WT_REMOVE setEric Sunshine (5):
Documentation/git: drop outdated Cogito reference
Documentation/git-tools: improve discoverability of Git wiki
Documentation/git-tools: fix item text formatting
Documentation/git-tools: drop references to defunct tools
Documentation/git-tools: retire manually-maintained listIlya Bobyr (1):
rev-parse --parseopt: allow [*=?!] in argument hintsJeff King (4):
test-lib: turn off "-x" tracing during chain-lint check
test-lib: disable trace when test is not verbose
clone: add tests for output directory
clone: use computed length in guess_dir_nameJiang Xin (1):
receive-pack: crash when checking with non-exist HEADJose F. Morales (1):
Mingw: verify both ends of the pipe () callJunio C Hamano (5):
builtin/send-pack.c: respect user.signingkey
Git 2.4.8
Start preparing for 2.5.1
pull: pass upload_pack only when it was given
Git 2.5.1Karthik Nayak (1):
Documentation/tag: remove double occurance of "<pattern>"Matthieu Moy (1):
pull.sh: quote $upload_pack when passing it to git-fetchMike Hommey (1):
fast-import: do less work when given "from" matches current branch headNguyễn Thái Ngọc Duy (1):
setup: set env $GIT_WORK_TREE when work tree is set, like $GIT_DIRSimon A. Eugster (1):
checkout: document subtlety around --ours/--theirsStefan Beller (3):
parse-options: align curly braces for all options
add: remove dead code
transport-helper: die on errors reading refs.Thomas Ackermann (1):
typofix for index-format.txt