mirror of
https://github.com/git/git.git
synced 2024-11-18 06:54:55 +01:00
5df3e2b3ca
Signed-off-by: Junio C Hamano <gitster@pobox.com>
151 lines
5.8 KiB
Text
151 lines
5.8 KiB
Text
Git v1.7.6 Release Notes (draft)
|
|
========================
|
|
|
|
Updates since v1.7.5
|
|
--------------------
|
|
|
|
* Various git-svn updates.
|
|
|
|
* Updates the way content tags are handled in gitweb.
|
|
|
|
* Similar to branch names, tagnames that begin with "-" are now
|
|
disallowed.
|
|
|
|
* Clean-up of the C part of i18n (but not l10n---please wait)
|
|
continues.
|
|
|
|
* The scripting part of the codebase is getting prepared for i18n/l10n.
|
|
|
|
* Processes spawned by "[alias] <name> = !process" in the configuration
|
|
can inspect GIT_PREFIX environment variable to learn where in the
|
|
working tree the original command was invoked.
|
|
|
|
* A magic pathspec ":/" tells a command that limits its operation to
|
|
the current directory when ran from a subdirectory to work on the
|
|
entire working tree. In general, ":/path/to/file" would be relative
|
|
to the root of the working tree hierarchy.
|
|
|
|
After "git reset --hard; edit Makefile; cd t/", "git add -u" would
|
|
be a no-op, but "git add -u :/" would add the updated contents of
|
|
the Makefile at the top level. If you want to name a path in the
|
|
current subdirectory whose unusual name begins with ":/", you can
|
|
name it by "./:/that/path" or by "\:/that/path".
|
|
|
|
* "git blame" learned "--abbrev[=<n>]" option to control the minimum
|
|
number of hexdigits shown for commit object names.
|
|
|
|
* "git blame" learned "--line-porcelain" that is less efficient but is
|
|
easier to parse.
|
|
|
|
* Aborting "git commit --interactive" discards updates to the index
|
|
made during the interctive session.
|
|
|
|
* "git commit" learned a "--patch" option to directly jump to the
|
|
per-hunk selection UI of the interactive mode.
|
|
|
|
* "git diff -C -C" used to disable the rename detection entirely when
|
|
there are too many copy candidate paths in the tree; now it falls
|
|
back to "-C" when doing so would keep the copy candidate paths
|
|
under the rename detection limit.
|
|
|
|
* "git diff" and its family of commands learned --dirstat=0 to show
|
|
directories that contribute less than 0.1% of changes.
|
|
|
|
* "git diff" and its family of commands learned --dirstat=lines mode to
|
|
assess damage to the directory based on number of lines in the patch
|
|
output, not based on the similarity numbers.
|
|
|
|
* "git format-patch" learned "--quiet" option to suppress the output of
|
|
the names of generated files.
|
|
|
|
* "git format-patch" quotes people's names when it has RFC822 special
|
|
characters in it, e.g. "Junio C. Hamano" <jch@example.com>. Earlier
|
|
it was up to the user to do this when using its output.
|
|
|
|
* "git log" and friends learned a new "--notes" option to replace the
|
|
"--show-notes" option. Unlike "--show-notes", "--notes=<ref>" does
|
|
not imply showing the default notes.
|
|
|
|
* "git ls-remote" learned "--exit-code" option to consider it a
|
|
different kind of error when no remote ref to be shown.
|
|
|
|
* "git merge" learned "-" as a short-hand for "the previous branch", just
|
|
like the way "git checkout -" works.
|
|
|
|
* "git merge" uses "merge.ff" configuration variable to decide to always
|
|
create a merge commit (i.e. --no-ff, aka merge.ff=no), refuse to create
|
|
a merge commit (i.e. --ff-only, aka merge.ff=only). Setting merge.ff=yes
|
|
(or not setting it at all) restores the default behaviour of allowing
|
|
fast-forward to happen when possible.
|
|
|
|
* p4-import (from contrib) learned a new option --preserve-user.
|
|
|
|
* "git rebase" that does not specify on top of which branch to rebase
|
|
the current branch now uses @{upstream} of the current branch.
|
|
|
|
* "git rev-list --count" used with "--cherry-mark" counts the cherry-picked
|
|
commits separately, producing more a useful output.
|
|
|
|
* "git submodule update" learned "--force" option to get rid of local
|
|
changes in submodules and replace them with the up-to-date version.
|
|
|
|
* "git status" and friends ignore .gitmodules file while the file is
|
|
still in a conflicted state during a merge, to avoid using information
|
|
that is not final and possibly corrupt with conflict markers.
|
|
|
|
* Compressed tarball gitweb generates is made without the timestamp of
|
|
the tarball generation; snapshot from the same tree should result in
|
|
a same tarball.
|
|
|
|
Also contains various documentation updates and minor miscellaneous
|
|
changes.
|
|
|
|
|
|
Fixes since v1.7.5
|
|
------------------
|
|
|
|
Unless otherwise noted, all the fixes in 1.7.5.X maintenance track are
|
|
included in this release.
|
|
|
|
* Setting $(prefix) in config.mak did not affect where etc/gitconfig
|
|
file is read from, even though passing it from the command line of
|
|
$(MAKE) did.
|
|
(merge kk/maint-prefix-in-config-mak later)
|
|
|
|
* The bash completion scripts should correctly work using zsh's bash
|
|
completion emulation layer now.
|
|
(merge fc/completion-zsh later)
|
|
|
|
* The logic to handle "&" (expand to UNIX username) in GECOS field
|
|
miscounted the length of the name it formatted.
|
|
(merge rg/copy-gecos-username later)
|
|
|
|
* The single-key mode of "git add -p" was easily fooled into thinking
|
|
that it was told to add everthing ('a') when up-arrow was pressed by
|
|
mistake.
|
|
(merge tr/add-i-no-escape later)
|
|
|
|
* "git cherry-pick -s resolve" failed to cherry-pick a root commit.
|
|
(merge jk/cherry-pick-root-with-resolve later)
|
|
|
|
* "git config" used to choke with an insanely long line.
|
|
(merge ef/maint-strbuf-init later)
|
|
|
|
* "git diff --word-diff" misbehaved when diff.suppress-blank-empty was
|
|
in effect.
|
|
(merge jm/maint-diff-words-with-sbe later)
|
|
|
|
* "git log --stdin path" with an input that has additional pathspec
|
|
used to corrupt memory.
|
|
(merge jc/maint-pathspec-stdin-and-cmdline later)
|
|
|
|
* "git send-pack" (hence "git push") over smalt-HTTP protocol could
|
|
deadlock when the client side pack-object died early.
|
|
(merge js/maint-send-pack-stateless-rpc-deadlock-fix later)
|
|
(merge jk/git-connection-deadlock-fix later)
|
|
|
|
---
|
|
exec >/var/tmp/1
|
|
echo O=$(git describe master)
|
|
O=v1.7.5.2-352-g4961210
|
|
git shortlog --no-merges ^maint ^$O master
|