mirror of
https://github.com/git/git.git
synced 2024-10-31 22:37:54 +01:00
e771946915
Signed-off-by: Junio C Hamano <gitster@pobox.com>
140 lines
5.5 KiB
Text
140 lines
5.5 KiB
Text
Git v1.7.12 Release Notes
|
|
=========================
|
|
|
|
Updates since v1.7.11
|
|
---------------------
|
|
|
|
UI, Workflows & Features
|
|
|
|
* Git can be told to normalize pathnames it read from readdir(3) and
|
|
all arguments it got from the command line into precomposed UTF-8
|
|
(assuming that they come as decomposed UTF-8), in order to work
|
|
around issues on Mac OS.
|
|
|
|
I think there still are other places that need conversion
|
|
(e.g. paths that are read from stdin for some commands), but this
|
|
should be a good first step in the right direction.
|
|
|
|
* Per-user $HOME/.gitconfig file can optionally be stored in
|
|
$HOME/.config/git/config instead, which is in line with XDG.
|
|
|
|
* The value of core.attributesfile and core.excludesfile default to
|
|
$HOME/.config/attributes and $HOME/.config/ignore respectively when
|
|
these files exist.
|
|
|
|
* Logic to disambiguate abbreviated object names have been taught to
|
|
take advantage of object types that are expected in the context,
|
|
e.g. XXXXXX in the "git describe" output v1.2.3-gXXXXXX must be a
|
|
commit object, not a blob nor a tree. This will help us prolong
|
|
the lifetime of abbreviated object names.
|
|
|
|
* "git apply" learned to wiggle the base version and perform three-way
|
|
merge when a patch does not exactly apply to the version you have.
|
|
|
|
* Scripted Porcelain writers now have access to the credential API via
|
|
the "git credential" plumbing command.
|
|
|
|
* "git help" used to always default to "man" format even on platforms
|
|
where "man" viewer is not widely available.
|
|
|
|
* "git clone --local $path" started its life as an experiment to
|
|
optionally use link/copy when cloning a repository on the disk, but
|
|
we didn't deprecate it after we made the option a no-op to always
|
|
use the optimization. The command learned "--no-local" option to
|
|
turn this off, as a more explicit alternative over use of file://
|
|
URL.
|
|
|
|
* "git fetch" and friends used to say "remote side hung up
|
|
unexpectedly" when they failed to get response they expect from the
|
|
other side, but one common reason why they don't get expected
|
|
response is that the remote repository does not exist or cannot be
|
|
read. The error message in this case was updated to give better
|
|
hints to the user.
|
|
|
|
* git native protocol agents learned to show software version over
|
|
the wire, so that the server log can be examined to see the vintage
|
|
distribution of clients.
|
|
|
|
* "git help -w $cmd" can show HTML version of documentation for
|
|
"git-$cmd" by setting help.htmlpath to somewhere other than the
|
|
default location where the build procedure installs them locally;
|
|
the variable can even point at a http:// URL.
|
|
|
|
* "git rebase [-i] --root $tip" can now be used to rewrite all the
|
|
history leading to "$tip" down to the root commit.
|
|
|
|
* "git rebase -i" learned "-x <cmd>" to insert "exec <cmd>" after
|
|
each commit in the resulting history.
|
|
|
|
* "git status" gives finer classification to various states of paths
|
|
in conflicted state and offer advice messages in its output.
|
|
|
|
* "git submodule" learned to deal with nested submodule structure
|
|
where a module is contained within a module whose origin is
|
|
specified as a relative URL to its superproject's origin.
|
|
|
|
* A rather heavy-ish "git completion" script has been split to create
|
|
a separate "git prompting" script, to help lazy-autoloading of the
|
|
completion part while making prompting part always available.
|
|
|
|
|
|
Foreign Interface
|
|
|
|
* "mediawiki" remote helper (in contrib/) learned to handle file
|
|
attachments.
|
|
|
|
* "git p4" now uses "Jobs:" and "p4 move" when appropriate.
|
|
|
|
* vcs-svn has been updated to clean-up compilation, lift 32-bit
|
|
limitations, etc.
|
|
|
|
|
|
Performance, Internal Implementation, etc. (please report possible regressions)
|
|
|
|
* Some tests showed false failures caused by a bug in ecryptofs.
|
|
|
|
* We no longer use AsciiDoc7 syntax in our documentation and favor a
|
|
more modern style.
|
|
|
|
* "git am --rebasing" codepath was taught to grab authorship, log
|
|
message and the patch text directly out of existing commits. This
|
|
will help rebasing commits that have confusing "diff" output in
|
|
their log messages.
|
|
|
|
* "git index-pack" and "git pack-objects" use streaming API to read
|
|
from the object store to avoid having to hold a large blob object
|
|
in-core while they are doing their thing.
|
|
|
|
* Code to match paths with exclude patterns learned to avoid calling
|
|
fnmatch() by comparing fixed leading substring literally when
|
|
possible.
|
|
|
|
* "git log -n 1 -- rarely-touched-path" was spending unnecessary
|
|
cycles after showing the first change to find the next one, only to
|
|
discard it.
|
|
|
|
|
|
Also contains minor documentation updates and code clean-ups.
|
|
|
|
|
|
Fixes since v1.7.11
|
|
-------------------
|
|
|
|
Unless otherwise noted, all the fixes since v1.7.11 in the maintenance
|
|
releases are contained in this release (see release notes to them for
|
|
details).
|
|
|
|
* When "git am" failed, old timers knew to check .git/rebase-apply/patch
|
|
to see what went wrong, but we never told the users about it.
|
|
(merge 14bf2d5 pg/maint-1.7.9-am-where-is-patch later to maint).
|
|
|
|
* When "git submodule add" clones a submodule repository, it can get
|
|
confused where to store the resulting submodule repository in the
|
|
superproject's .git/ directory when there is a symbolic link in the
|
|
path to the current directory.
|
|
(merge 6eafa6d jl/maint-1.7.10-recurse-submodules-with-symlink later to maint).
|
|
|
|
* In 1.7.9 era, we taught "git rebase" about the raw timestamp format
|
|
but we did not teach the same trick to "filter-branch", which rolled
|
|
a similar logic on its own.
|
|
(merge 44b85e89 jc/maint-filter-branch-epoch-date later to maint).
|