You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
156 lines
6.3 KiB
156 lines
6.3 KiB
Git v1.7.4 Release Notes |
|
======================== |
|
|
|
Updates since v1.7.3 |
|
-------------------- |
|
|
|
* The documentation Makefile now assumes by default asciidoc 8 and |
|
docbook-xsl >= 1.73. If you have older versions, you can set |
|
ASCIIDOC7 and ASCIIDOC_ROFF, respectively. |
|
|
|
* The option parsers of various commands that create new branches (or |
|
rename existing ones to a new name) were too loose and users were |
|
allowed to give a branch a name that begins with a dash by creative |
|
abuse of their command line options, which only led to burning |
|
themselves. The name of a branch cannot begin with a dash now. |
|
|
|
* System-wide fallback default attributes can be stored in |
|
/etc/gitattributes; the core.attributesfile configuration variable can |
|
be used to customize the path to this file. |
|
|
|
* The thread structure generated by "git send-email" has changed |
|
slightly. Setting the cover letter of the latest series as a reply |
|
to the cover letter of the previous series with --in-reply-to used |
|
to make the new cover letter and all the patches replies to the |
|
cover letter of the previous series; this has been changed to make |
|
the patches in the new series replies to the new cover letter. |
|
|
|
* The Bash completion script in contrib/ has been adjusted to be usable with |
|
Bash 4 (options with '=value' didn't complete). It has been also made |
|
usable with zsh. |
|
|
|
* Different pagers can be chosen depending on which subcommand is |
|
being run under the pager, using the "pager.<subcommand>" variable. |
|
|
|
* The hardcoded tab-width of 8 that is used in whitespace breakage checks is now |
|
configurable via the attributes mechanism. |
|
|
|
* Support of case insensitive filesystems (i.e. "core.ignorecase") has |
|
been improved. For example, the gitignore mechanism didn't pay attention |
|
to case insensitivity. |
|
|
|
* The <tree>:<path> syntax for naming a blob in a tree, and the :<path> |
|
syntax for naming a blob in the index (e.g. "master:Makefile", |
|
":hello.c") have been extended. You can start <path> with "./" to |
|
implicitly have the (sub)directory you are in prefixed to the |
|
lookup. Similarly, ":../Makefile" from a subdirectory would mean |
|
"the Makefile of the parent directory in the index". |
|
|
|
* "git blame" learned the --show-email option to display the e-mail |
|
addresses instead of the names of authors. |
|
|
|
* "git commit" learned the --fixup and --squash options to help later invocation |
|
of interactive rebase. |
|
|
|
* Command line options to "git cvsimport" whose names are in capital |
|
letters (-A, -M, -R and -S) can now be specified as the default in |
|
the .git/config file by their longer names (cvsimport.authorsFile, |
|
cvsimport.mergeRegex, cvsimport.trackRevisions, cvsimport.ignorePaths). |
|
|
|
* "git daemon" can be built in the MinGW environment. |
|
|
|
* "git daemon" can take more than one --listen option to listen to |
|
multiple addresses. |
|
|
|
* "git describe --exact-match" was optimized not to read commit |
|
objects unnecessarily. |
|
|
|
* "git diff" and "git grep" learned what functions and subroutines |
|
in Fortran, Pascal and Perl look like. |
|
|
|
* "git fetch" learned the "--recurse-submodules" option. |
|
|
|
* "git mergetool" tells vim/gvim to show a three-way diff by default |
|
(use vimdiff2/gvimdiff2 as the tool name for old behavior). |
|
|
|
* "git log -G<pattern>" limits the output to commits whose change has |
|
added or deleted lines that match the given pattern. |
|
|
|
* "git read-tree" with no argument as a way to empty the index is |
|
deprecated; we might want to remove it in the future. Users can |
|
use the new --empty option to be more explicit instead. |
|
|
|
* "git repack -f" does not spend cycles to recompress objects in the |
|
non-delta representation anymore (use -F if you really mean it |
|
e.g. after you changed the core.compression variable setting). |
|
|
|
* "git merge --log" used to limit the resulting merge log to 20 |
|
entries; this is now customizable by giving e.g. "--log=47". |
|
|
|
* "git merge" may work better when all files were moved out of a |
|
directory in one branch while a new file is created in place of that |
|
directory in the other branch. |
|
|
|
* "git merge" learned the "--abort" option, synonymous to |
|
"git reset --merge" when a merge is in progress. |
|
|
|
* "git notes" learned the "merge" subcommand to merge notes refs. |
|
In addition to the default manual conflict resolution, there are |
|
also several notes merge strategies for automatically resolving |
|
notes merge conflicts. |
|
|
|
* "git rebase --autosquash" can use SHA-1 object names to name the |
|
commit which is to be fixed up (e.g. "fixup! e83c5163"). |
|
|
|
* The default "recursive" merge strategy learned the --rename-threshold |
|
option to influence the rename detection, similar to the -M option |
|
of "git diff". From the "git merge" frontend, the "-X<strategy option>" |
|
interface, e.g. "git merge -Xrename-threshold=50% ...", can be used |
|
to trigger this. |
|
|
|
* The "recursive" strategy also learned to ignore various whitespace |
|
changes; the most notable is -Xignore-space-at-eol. |
|
|
|
* "git send-email" learned "--to-cmd", similar to "--cc-cmd", to read |
|
the recipient list from a command output. |
|
|
|
* "git send-email" learned to read and use "To:" from its input files. |
|
|
|
* you can extend "git shell", which is often used on boxes that allow |
|
git-only login over ssh as login shell, with a custom set of |
|
commands. |
|
|
|
* The current branch name in "git status" output can be colored differently |
|
from the generic header color by setting the "color.status.branch" variable. |
|
|
|
* "git submodule sync" updates metainformation for all submodules, |
|
not just the ones that have been checked out. |
|
|
|
* gitweb can use a custom 'highlight' command with its configuration file. |
|
|
|
* other gitweb updates. |
|
|
|
|
|
Also contains various documentation updates. |
|
|
|
|
|
Fixes since v1.7.3 |
|
------------------ |
|
|
|
All of the fixes in the v1.7.3.X maintenance series are included in this |
|
release, unless otherwise noted. |
|
|
|
* "git log --author=me --author=her" did not find commits written by |
|
me or by her; instead it looked for commits written by me and by |
|
her, which is impossible. |
|
|
|
* "git push --progress" shows progress indicators now. |
|
|
|
* "git rebase -i" showed a confusing error message when given a |
|
branch name that does not exist. |
|
|
|
* "git repack" places its temporary packs under $GIT_OBJECT_DIRECTORY/pack |
|
instead of $GIT_OBJECT_DIRECTORY/ to avoid cross directory renames. |
|
|
|
* "git submodule update --recursive --other-flags" passes flags down |
|
to its subinvocations.
|
|
|