Junio C Hamano | 7ed863a | 2011-01-30 11:53:13 -0800 | [diff] [blame] | 1 | Git v1.7.4 Release Notes |
| 2 | ======================== |
Junio C Hamano | 9855b08 | 2010-09-29 14:07:59 -0700 | [diff] [blame] | 3 | |
| 4 | Updates since v1.7.3 |
| 5 | -------------------- |
| 6 | |
Jeff King | 79c461d | 2010-11-19 12:54:24 -0500 | [diff] [blame] | 7 | * The documentation Makefile now assumes by default asciidoc 8 and |
| 8 | docbook-xsl >= 1.73. If you have older versions, you can set |
| 9 | ASCIIDOC7 and ASCIIDOC_ROFF, respectively. |
| 10 | |
Ralf Wildenhues | 469bfc9 | 2011-01-03 20:03:34 +0100 | [diff] [blame] | 11 | * The option parsers of various commands that create new branches (or |
Junio C Hamano | 9855b08 | 2010-09-29 14:07:59 -0700 | [diff] [blame] | 12 | rename existing ones to a new name) were too loose and users were |
Ralf Wildenhues | 469bfc9 | 2011-01-03 20:03:34 +0100 | [diff] [blame] | 13 | allowed to give a branch a name that begins with a dash by creative |
| 14 | abuse of their command line options, which only led to burning |
| 15 | themselves. The name of a branch cannot begin with a dash now. |
Junio C Hamano | 9855b08 | 2010-09-29 14:07:59 -0700 | [diff] [blame] | 16 | |
| 17 | * System-wide fallback default attributes can be stored in |
Michael J Gruber | 3e70e37 | 2011-01-13 10:35:34 +0100 | [diff] [blame] | 18 | /etc/gitattributes; the core.attributesfile configuration variable can |
Junio C Hamano | 9855b08 | 2010-09-29 14:07:59 -0700 | [diff] [blame] | 19 | be used to customize the path to this file. |
| 20 | |
Junio C Hamano | 1c2ab43 | 2010-12-02 14:33:26 -0800 | [diff] [blame] | 21 | * The thread structure generated by "git send-email" has changed |
| 22 | slightly. Setting the cover letter of the latest series as a reply |
| 23 | to the cover letter of the previous series with --in-reply-to used |
| 24 | to make the new cover letter and all the patches replies to the |
| 25 | cover letter of the previous series; this has been changed to make |
| 26 | the patches in the new series replies to the new cover letter. |
| 27 | |
Michael J Gruber | 3e70e37 | 2011-01-13 10:35:34 +0100 | [diff] [blame] | 28 | * The Bash completion script in contrib/ has been adjusted to be usable with |
| 29 | Bash 4 (options with '=value' didn't complete). It has been also made |
Junio C Hamano | 01b97a4 | 2010-12-28 13:52:52 -0800 | [diff] [blame] | 30 | usable with zsh. |
Junio C Hamano | d313c1c | 2010-11-17 16:43:05 -0800 | [diff] [blame] | 31 | |
Junio C Hamano | 1b97434 | 2010-12-16 21:43:08 -0800 | [diff] [blame] | 32 | * Different pagers can be chosen depending on which subcommand is |
Michael J Gruber | 3e70e37 | 2011-01-13 10:35:34 +0100 | [diff] [blame] | 33 | being run under the pager, using the "pager.<subcommand>" variable. |
Junio C Hamano | 1b97434 | 2010-12-16 21:43:08 -0800 | [diff] [blame] | 34 | |
Michael J Gruber | 3e70e37 | 2011-01-13 10:35:34 +0100 | [diff] [blame] | 35 | * The hardcoded tab-width of 8 that is used in whitespace breakage checks is now |
Junio C Hamano | 1b97434 | 2010-12-16 21:43:08 -0800 | [diff] [blame] | 36 | configurable via the attributes mechanism. |
| 37 | |
| 38 | * Support of case insensitive filesystems (i.e. "core.ignorecase") has |
| 39 | been improved. For example, the gitignore mechanism didn't pay attention |
Michael J Gruber | 3e70e37 | 2011-01-13 10:35:34 +0100 | [diff] [blame] | 40 | to case insensitivity. |
Junio C Hamano | 1b97434 | 2010-12-16 21:43:08 -0800 | [diff] [blame] | 41 | |
Michael J Gruber | 3e70e37 | 2011-01-13 10:35:34 +0100 | [diff] [blame] | 42 | * The <tree>:<path> syntax for naming a blob in a tree, and the :<path> |
| 43 | syntax for naming a blob in the index (e.g. "master:Makefile", |
Junio C Hamano | 1b97434 | 2010-12-16 21:43:08 -0800 | [diff] [blame] | 44 | ":hello.c") have been extended. You can start <path> with "./" to |
| 45 | implicitly have the (sub)directory you are in prefixed to the |
| 46 | lookup. Similarly, ":../Makefile" from a subdirectory would mean |
| 47 | "the Makefile of the parent directory in the index". |
| 48 | |
Michael J Gruber | 3e70e37 | 2011-01-13 10:35:34 +0100 | [diff] [blame] | 49 | * "git blame" learned the --show-email option to display the e-mail |
Junio C Hamano | 1c2ab43 | 2010-12-02 14:33:26 -0800 | [diff] [blame] | 50 | addresses instead of the names of authors. |
| 51 | |
Michael J Gruber | 3e70e37 | 2011-01-13 10:35:34 +0100 | [diff] [blame] | 52 | * "git commit" learned the --fixup and --squash options to help later invocation |
| 53 | of interactive rebase. |
Junio C Hamano | 1b97434 | 2010-12-16 21:43:08 -0800 | [diff] [blame] | 54 | |
Junio C Hamano | 685e9d9 | 2011-01-05 14:46:07 -0800 | [diff] [blame] | 55 | * Command line options to "git cvsimport" whose names are in capital |
| 56 | letters (-A, -M, -R and -S) can now be specified as the default in |
| 57 | the .git/config file by their longer names (cvsimport.authorsFile, |
| 58 | cvsimport.mergeRegex, cvsimport.trackRevisions, cvsimport.ignorePaths). |
| 59 | |
Michael J Gruber | 3e70e37 | 2011-01-13 10:35:34 +0100 | [diff] [blame] | 60 | * "git daemon" can be built in the MinGW environment. |
Junio C Hamano | 1c2ab43 | 2010-12-02 14:33:26 -0800 | [diff] [blame] | 61 | |
Junio C Hamano | d313c1c | 2010-11-17 16:43:05 -0800 | [diff] [blame] | 62 | * "git daemon" can take more than one --listen option to listen to |
| 63 | multiple addresses. |
| 64 | |
Junio C Hamano | 1b97434 | 2010-12-16 21:43:08 -0800 | [diff] [blame] | 65 | * "git describe --exact-match" was optimized not to read commit |
| 66 | objects unnecessarily. |
| 67 | |
Michael J Gruber | 3e70e37 | 2011-01-13 10:35:34 +0100 | [diff] [blame] | 68 | * "git diff" and "git grep" learned what functions and subroutines |
Junio C Hamano | 630fc78 | 2011-01-24 11:00:00 -0800 | [diff] [blame] | 69 | in Fortran, Pascal and Perl look like. |
Junio C Hamano | 9855b08 | 2010-09-29 14:07:59 -0700 | [diff] [blame] | 70 | |
Michael J Gruber | 3e70e37 | 2011-01-13 10:35:34 +0100 | [diff] [blame] | 71 | * "git fetch" learned the "--recurse-submodules" option. |
Junio C Hamano | 1b97434 | 2010-12-16 21:43:08 -0800 | [diff] [blame] | 72 | |
Michael J Gruber | 3e70e37 | 2011-01-13 10:35:34 +0100 | [diff] [blame] | 73 | * "git mergetool" tells vim/gvim to show a three-way diff by default |
| 74 | (use vimdiff2/gvimdiff2 as the tool name for old behavior). |
Junio C Hamano | d313c1c | 2010-11-17 16:43:05 -0800 | [diff] [blame] | 75 | |
Junio C Hamano | 9855b08 | 2010-09-29 14:07:59 -0700 | [diff] [blame] | 76 | * "git log -G<pattern>" limits the output to commits whose change has |
| 77 | added or deleted lines that match the given pattern. |
| 78 | |
| 79 | * "git read-tree" with no argument as a way to empty the index is |
| 80 | deprecated; we might want to remove it in the future. Users can |
| 81 | use the new --empty option to be more explicit instead. |
| 82 | |
Junio C Hamano | d313c1c | 2010-11-17 16:43:05 -0800 | [diff] [blame] | 83 | * "git repack -f" does not spend cycles to recompress objects in the |
Junio C Hamano | 01b97a4 | 2010-12-28 13:52:52 -0800 | [diff] [blame] | 84 | non-delta representation anymore (use -F if you really mean it |
| 85 | e.g. after you changed the core.compression variable setting). |
Junio C Hamano | d313c1c | 2010-11-17 16:43:05 -0800 | [diff] [blame] | 86 | |
Junio C Hamano | 9855b08 | 2010-09-29 14:07:59 -0700 | [diff] [blame] | 87 | * "git merge --log" used to limit the resulting merge log to 20 |
| 88 | entries; this is now customizable by giving e.g. "--log=47". |
| 89 | |
Junio C Hamano | 1c2ab43 | 2010-12-02 14:33:26 -0800 | [diff] [blame] | 90 | * "git merge" may work better when all files were moved out of a |
| 91 | directory in one branch while a new file is created in place of that |
| 92 | directory in the other branch. |
| 93 | |
Junio C Hamano | adf872e | 2011-01-13 11:42:01 -0800 | [diff] [blame] | 94 | * "git merge" learned the "--abort" option, synonymous to |
| 95 | "git reset --merge" when a merge is in progress. |
| 96 | |
| 97 | * "git notes" learned the "merge" subcommand to merge notes refs. |
| 98 | In addition to the default manual conflict resolution, there are |
| 99 | also several notes merge strategies for automatically resolving |
| 100 | notes merge conflicts. |
| 101 | |
Michael J Gruber | 3e70e37 | 2011-01-13 10:35:34 +0100 | [diff] [blame] | 102 | * "git rebase --autosquash" can use SHA-1 object names to name the |
| 103 | commit which is to be fixed up (e.g. "fixup! e83c5163"). |
Junio C Hamano | 1c2ab43 | 2010-12-02 14:33:26 -0800 | [diff] [blame] | 104 | |
Michael J Gruber | 3e70e37 | 2011-01-13 10:35:34 +0100 | [diff] [blame] | 105 | * The default "recursive" merge strategy learned the --rename-threshold |
Junio C Hamano | d313c1c | 2010-11-17 16:43:05 -0800 | [diff] [blame] | 106 | option to influence the rename detection, similar to the -M option |
Michael J Gruber | 3e70e37 | 2011-01-13 10:35:34 +0100 | [diff] [blame] | 107 | of "git diff". From the "git merge" frontend, the "-X<strategy option>" |
Junio C Hamano | 01b97a4 | 2010-12-28 13:52:52 -0800 | [diff] [blame] | 108 | interface, e.g. "git merge -Xrename-threshold=50% ...", can be used |
| 109 | to trigger this. |
Junio C Hamano | d313c1c | 2010-11-17 16:43:05 -0800 | [diff] [blame] | 110 | |
| 111 | * The "recursive" strategy also learned to ignore various whitespace |
| 112 | changes; the most notable is -Xignore-space-at-eol. |
| 113 | |
| 114 | * "git send-email" learned "--to-cmd", similar to "--cc-cmd", to read |
Michael J Gruber | 3e70e37 | 2011-01-13 10:35:34 +0100 | [diff] [blame] | 115 | the recipient list from a command output. |
Junio C Hamano | d313c1c | 2010-11-17 16:43:05 -0800 | [diff] [blame] | 116 | |
| 117 | * "git send-email" learned to read and use "To:" from its input files. |
| 118 | |
Junio C Hamano | 9855b08 | 2010-09-29 14:07:59 -0700 | [diff] [blame] | 119 | * you can extend "git shell", which is often used on boxes that allow |
Michael J Gruber | 3e70e37 | 2011-01-13 10:35:34 +0100 | [diff] [blame] | 120 | git-only login over ssh as login shell, with a custom set of |
Junio C Hamano | 9855b08 | 2010-09-29 14:07:59 -0700 | [diff] [blame] | 121 | commands. |
| 122 | |
Junio C Hamano | 1b97434 | 2010-12-16 21:43:08 -0800 | [diff] [blame] | 123 | * The current branch name in "git status" output can be colored differently |
Michael J Gruber | 3e70e37 | 2011-01-13 10:35:34 +0100 | [diff] [blame] | 124 | from the generic header color by setting the "color.status.branch" variable. |
Junio C Hamano | 1b97434 | 2010-12-16 21:43:08 -0800 | [diff] [blame] | 125 | |
Junio C Hamano | d313c1c | 2010-11-17 16:43:05 -0800 | [diff] [blame] | 126 | * "git submodule sync" updates metainformation for all submodules, |
| 127 | not just the ones that have been checked out. |
| 128 | |
Michael J Gruber | 3e70e37 | 2011-01-13 10:35:34 +0100 | [diff] [blame] | 129 | * gitweb can use a custom 'highlight' command with its configuration file. |
Junio C Hamano | d313c1c | 2010-11-17 16:43:05 -0800 | [diff] [blame] | 130 | |
Junio C Hamano | 1b97434 | 2010-12-16 21:43:08 -0800 | [diff] [blame] | 131 | * other gitweb updates. |
| 132 | |
Junio C Hamano | d313c1c | 2010-11-17 16:43:05 -0800 | [diff] [blame] | 133 | |
Junio C Hamano | 9855b08 | 2010-09-29 14:07:59 -0700 | [diff] [blame] | 134 | Also contains various documentation updates. |
| 135 | |
| 136 | |
| 137 | Fixes since v1.7.3 |
| 138 | ------------------ |
| 139 | |
Michael J Gruber | 3e70e37 | 2011-01-13 10:35:34 +0100 | [diff] [blame] | 140 | All of the fixes in the v1.7.3.X maintenance series are included in this |
Junio C Hamano | 9855b08 | 2010-09-29 14:07:59 -0700 | [diff] [blame] | 141 | release, unless otherwise noted. |
| 142 | |
| 143 | * "git log --author=me --author=her" did not find commits written by |
| 144 | me or by her; instead it looked for commits written by me and by |
| 145 | her, which is impossible. |
| 146 | |
Junio C Hamano | d313c1c | 2010-11-17 16:43:05 -0800 | [diff] [blame] | 147 | * "git push --progress" shows progress indicators now. |
| 148 | |
Junio C Hamano | 7ed863a | 2011-01-30 11:53:13 -0800 | [diff] [blame] | 149 | * "git rebase -i" showed a confusing error message when given a |
| 150 | branch name that does not exist. |
| 151 | |
Junio C Hamano | d313c1c | 2010-11-17 16:43:05 -0800 | [diff] [blame] | 152 | * "git repack" places its temporary packs under $GIT_OBJECT_DIRECTORY/pack |
| 153 | instead of $GIT_OBJECT_DIRECTORY/ to avoid cross directory renames. |
| 154 | |
Junio C Hamano | d313c1c | 2010-11-17 16:43:05 -0800 | [diff] [blame] | 155 | * "git submodule update --recursive --other-flags" passes flags down |
| 156 | to its subinvocations. |