Junio C Hamano | 6ceb270 | 2011-04-19 11:51:00 -0700 | [diff] [blame] | 1 | Git v1.7.5 Release Notes |
Junio C Hamano | afb0b79 | 2011-02-28 12:28:20 -0800 | [diff] [blame] | 2 | ======================== |
| 3 | |
| 4 | Updates since v1.7.4 |
| 5 | -------------------- |
| 6 | |
| 7 | * Various MinGW portability fixes. |
| 8 | |
| 9 | * Various git-p4 enhancements (in contrib). |
| 10 | |
Junio C Hamano | 865d370 | 2011-04-13 14:01:03 -0700 | [diff] [blame] | 11 | * Various vcs-svn, git-svn and gitk enhancements and fixes. |
Junio C Hamano | 83c3c62 | 2011-03-09 16:21:16 -0800 | [diff] [blame] | 12 | |
Junio C Hamano | be919d5 | 2011-03-26 20:17:15 -0700 | [diff] [blame] | 13 | * Various git-gui updates (0.14.0). |
| 14 | |
Junio C Hamano | a62eafb | 2011-03-15 15:17:54 -0700 | [diff] [blame] | 15 | * Update to more modern HP-UX port. |
| 16 | |
Junio C Hamano | cb35c06 | 2011-04-03 00:18:50 -0700 | [diff] [blame] | 17 | * The codebase is getting prepared for i18n/l10n; no translated |
| 18 | strings nor translation mechanism in the code yet, but the strings |
| 19 | are being marked for l10n. |
Junio C Hamano | 08c8d55 | 2011-03-20 22:24:24 -0700 | [diff] [blame] | 20 | |
Junio C Hamano | 5e839c8 | 2011-03-22 22:02:24 -0700 | [diff] [blame] | 21 | * The bash completion script can now complete symmetric difference |
| 22 | for "git diff" command, e.g. "git diff ...bra<TAB>". |
| 23 | |
Junio C Hamano | be919d5 | 2011-03-26 20:17:15 -0700 | [diff] [blame] | 24 | * The default minimum length of abbreviated and unique object names |
| 25 | can now be configured by setting the core.abbrev configuration |
| 26 | variable. |
| 27 | |
Junio C Hamano | a62eafb | 2011-03-15 15:17:54 -0700 | [diff] [blame] | 28 | * "git apply -v" reports offset lines when the patch does not apply at |
| 29 | the exact location recorded in the diff output. |
| 30 | |
Junio C Hamano | afb0b79 | 2011-02-28 12:28:20 -0800 | [diff] [blame] | 31 | * "git config" used to be also known as "git repo-config", but the old |
| 32 | name is now officially deprecated. |
| 33 | |
| 34 | * "git checkout --detach <commit>" is a more user friendly synonym for |
| 35 | "git checkout <commit>^0". |
| 36 | |
Michael J Gruber | a3ca9b0 | 2011-03-16 10:23:23 +0100 | [diff] [blame] | 37 | * "git checkout" performed on detached HEAD gives a warning and |
Junio C Hamano | a62eafb | 2011-03-15 15:17:54 -0700 | [diff] [blame] | 38 | advice when the commit being left behind will become unreachable from |
| 39 | any branch or tag. |
| 40 | |
Michael J Gruber | a3ca9b0 | 2011-03-16 10:23:23 +0100 | [diff] [blame] | 41 | * "git cherry-pick" and "git revert" can be told to use a custom merge |
Junio C Hamano | afb0b79 | 2011-02-28 12:28:20 -0800 | [diff] [blame] | 42 | strategy, similar to "git rebase". |
| 43 | |
Junio C Hamano | 83c3c62 | 2011-03-09 16:21:16 -0800 | [diff] [blame] | 44 | * "git cherry-pick" remembers which commit failed to apply when it is |
| 45 | stopped by conflicts, making it unnecessary to use "commit -c $commit" |
| 46 | to conclude it. |
| 47 | |
Junio C Hamano | a62eafb | 2011-03-15 15:17:54 -0700 | [diff] [blame] | 48 | * "git cvsimport" bails out immediately when the cvs server cannot be |
| 49 | reached, without spewing unnecessary error messages that complain about |
| 50 | the server response it never got. |
| 51 | |
Junio C Hamano | 5e839c8 | 2011-03-22 22:02:24 -0700 | [diff] [blame] | 52 | * "git fetch" vs "git upload-pack" transfer learned 'no-done' |
| 53 | protocol extension to save one round-trip after the content |
| 54 | negotiation is done. This saves one HTTP RPC, reducing the overall |
| 55 | latency for a trivial fetch. |
| 56 | |
Junio C Hamano | 6be0559 | 2011-04-06 10:57:32 -0700 | [diff] [blame] | 57 | * "git fetch" can be told to recursively fetch submodules on-demand. |
| 58 | |
Junio C Hamano | 08c8d55 | 2011-03-20 22:24:24 -0700 | [diff] [blame] | 59 | * "git grep -f <filename>" learned to treat "-" as "read from the |
| 60 | standard input stream". |
| 61 | |
Junio C Hamano | 83c3c62 | 2011-03-09 16:21:16 -0800 | [diff] [blame] | 62 | * "git grep --no-index" did not honor pathspecs correctly, returning |
| 63 | paths outside the specified area. |
| 64 | |
Junio C Hamano | cb35c06 | 2011-04-03 00:18:50 -0700 | [diff] [blame] | 65 | * "git init" learned the --separate-git-dir option to allow the git |
| 66 | directory for a new repository created elsewhere and linked via the |
| 67 | gitdir mechanism. This is primarily to help submodule support later |
| 68 | to switch between a branch of superproject that has the submodule |
| 69 | and another that does not. |
| 70 | |
Michael J Gruber | a3ca9b0 | 2011-03-16 10:23:23 +0100 | [diff] [blame] | 71 | * "git log" type commands now understand globbing pathspecs. You |
Junio C Hamano | a62eafb | 2011-03-15 15:17:54 -0700 | [diff] [blame] | 72 | can say "git log -- '*.txt'" for example. |
| 73 | |
Junio C Hamano | 5e839c8 | 2011-03-22 22:02:24 -0700 | [diff] [blame] | 74 | * "git log" family of commands learned --cherry and --cherry-mark |
| 75 | options that can be used to view two diverged branches while omitting |
| 76 | or highlighting equivalent changes that appear on both sides of a |
| 77 | symmetric difference (e.g. "log --cherry A...B"). |
| 78 | |
Junio C Hamano | cb35c06 | 2011-04-03 00:18:50 -0700 | [diff] [blame] | 79 | * A lazy "git merge" that didn't say what to merge used to be an error. |
| 80 | When run on a branch that has an upstream defined, however, the command |
| 81 | now merges from the configured upstream. |
| 82 | |
Junio C Hamano | 08c8d55 | 2011-03-20 22:24:24 -0700 | [diff] [blame] | 83 | * "git mergetool" learned how to drive "beyond compare 3" as well. |
| 84 | |
| 85 | * "git rerere forget" without pathspec used to forget all the saved |
| 86 | conflicts that relate to the current merge; it now requires you to |
| 87 | give it pathspecs. |
| 88 | |
Michael J Gruber | a3ca9b0 | 2011-03-16 10:23:23 +0100 | [diff] [blame] | 89 | * "git rev-list --objects $revs -- $pathspec" now limits the objects listed |
Junio C Hamano | afb0b79 | 2011-02-28 12:28:20 -0800 | [diff] [blame] | 90 | in its output properly with the pathspec, in preparation for narrow |
| 91 | clones. |
| 92 | |
Junio C Hamano | a62eafb | 2011-03-15 15:17:54 -0700 | [diff] [blame] | 93 | * "git push" with no parameters gives better advice messages when |
| 94 | "tracking" is used as the push.default semantics or there is no remote |
| 95 | configured yet. |
Junio C Hamano | afb0b79 | 2011-02-28 12:28:20 -0800 | [diff] [blame] | 96 | |
Junio C Hamano | 6be0559 | 2011-04-06 10:57:32 -0700 | [diff] [blame] | 97 | * A possible value to the "push.default" configuration variable, |
| 98 | 'tracking', gained a synonym that more naturally describes what it |
| 99 | does, 'upstream'. |
| 100 | |
Michael J Gruber | a3ca9b0 | 2011-03-16 10:23:23 +0100 | [diff] [blame] | 101 | * "git rerere" learned a new subcommand "remaining" that is similar to |
| 102 | "status" and lists the paths that had conflicts which are known to |
Junio C Hamano | afb0b79 | 2011-02-28 12:28:20 -0800 | [diff] [blame] | 103 | rerere, but excludes the paths that have already been marked as |
| 104 | resolved in the index from its output. "git mergetool" has been |
| 105 | updated to use this facility. |
| 106 | |
Junio C Hamano | afb0b79 | 2011-02-28 12:28:20 -0800 | [diff] [blame] | 107 | Also contains various documentation updates. |
| 108 | |
| 109 | |
| 110 | Fixes since v1.7.4 |
| 111 | ------------------ |
| 112 | |
| 113 | All of the fixes in the v1.7.4.X maintenance series are included in this |
| 114 | release, unless otherwise noted. |
| 115 | |
Junio C Hamano | 5e839c8 | 2011-03-22 22:02:24 -0700 | [diff] [blame] | 116 | * "git fetch" from a client that is mostly following the remote |
| 117 | needlessly told all of its refs to the server for both sides to |
| 118 | compute the set of objects that need to be transferred efficiently, |
| 119 | instead of stopping when the server heard enough. In a project with |
| 120 | many tags, this turns out to be extremely wasteful, especially over |
| 121 | the smart HTTP transport (sp/maint-{upload,fetch}-pack-stop-early~1). |
| 122 | |
| 123 | * "git fetch" run from a repository that uses the same repository as |
| 124 | its alternate object store as the repository it is fetching from |
| 125 | did not tell the server that it already has access to objects |
| 126 | reachable from the refs in their common alternate object store, |
| 127 | causing it to fetch unnecessary objects (jc/maint-fetch-alt). |
| 128 | |
Junio C Hamano | 6be0559 | 2011-04-06 10:57:32 -0700 | [diff] [blame] | 129 | * "git remote add --mirror" created a configuration that is suitable for |
| 130 | doing both a mirror fetch and a mirror push at the same time, which |
| 131 | made little sense. We now warn and require the command line to specify |
| 132 | either --mirror=fetch or --mirror=push. |