Junio C Hamano | 89bdb3b | 2009-05-10 06:48:14 | [diff] [blame] | 1 | GIT v1.6.4 Release Notes |
| 2 | ======================== |
| 3 | |
| 4 | With the next major release, "git push" into a branch that is |
| 5 | currently checked out will be refused by default. You can choose |
| 6 | what should happen upon such a push by setting the configuration |
| 7 | variable receive.denyCurrentBranch in the receiving repository. |
| 8 | |
| 9 | To ease the transition plan, the receiving repository of such a |
| 10 | push running this release will issue a big warning when the |
| 11 | configuration variable is missing. Please refer to: |
| 12 | |
| 13 | http://git.or.cz/gitwiki/GitFaq#non-bare |
| 14 | http://thread.gmane.org/gmane.comp.version-control.git/107758/focus=108007 |
| 15 | |
| 16 | for more details on the reason why this change is needed and the |
| 17 | transition plan. |
| 18 | |
| 19 | For a similar reason, "git push $there :$killed" to delete the branch |
| 20 | $killed in a remote repository $there, if $killed branch is the current |
| 21 | branch pointed at by its HEAD, gets a large warning. You can choose what |
| 22 | should happen upon such a push by setting the configuration variable |
| 23 | receive.denyDeleteCurrent in the receiving repository. |
| 24 | |
Junio C Hamano | 89bdb3b | 2009-05-10 06:48:14 | [diff] [blame] | 25 | |
| 26 | Updates since v1.6.3 |
| 27 | -------------------- |
| 28 | |
| 29 | (subsystems) |
| 30 | |
Junio C Hamano | 9f10ed3 | 2009-05-26 08:38:52 | [diff] [blame] | 31 | * gitweb Perl style clean-up. |
| 32 | |
| 33 | * git-svn updates, including a new --authors-prog option to map author |
Junio C Hamano | f7151d5 | 2009-07-19 21:31:33 | [diff] [blame] | 34 | names by invoking an external program, 'git svn reset' to unwind |
Junio C Hamano | aa2cd76 | 2009-07-26 08:14:01 | [diff] [blame] | 35 | 'git svn fetch', support for more than one branches, documenting |
| 36 | of the useful --minimize-url feature, new "git svn gc" command, etc. |
Junio C Hamano | 9f10ed3 | 2009-05-26 08:38:52 | [diff] [blame] | 37 | |
| 38 | (portability) |
| 39 | |
| 40 | * We feed iconv with "UTF-8" instead of "utf8"; the former is |
Junio C Hamano | f7151d5 | 2009-07-19 21:31:33 | [diff] [blame] | 41 | understood more widely. Similarly updated test scripts to use |
Junio C Hamano | d594fb6 | 2009-07-25 09:09:54 | [diff] [blame] | 42 | encoding names more widely understood (e.g. use "ISO8859-1" instead |
Junio C Hamano | f7151d5 | 2009-07-19 21:31:33 | [diff] [blame] | 43 | of "ISO-8859-1"). |
| 44 | |
| 45 | * Various portability fixes/workarounds for different vintages of |
| 46 | SunOS, IRIX, and Windows. |
| 47 | |
| 48 | * Git-over-ssh transport on Windows supports PuTTY plink and TortoisePlink. |
Junio C Hamano | 9f10ed3 | 2009-05-26 08:38:52 | [diff] [blame] | 49 | |
Junio C Hamano | 89bdb3b | 2009-05-10 06:48:14 | [diff] [blame] | 50 | (performance) |
| 51 | |
Junio C Hamano | f7151d5 | 2009-07-19 21:31:33 | [diff] [blame] | 52 | * Many repeated use of lstat() are optimized out in "checkout" codepath. |
| 53 | |
| 54 | * git-status (and underlying git-diff-index --cached) are optimized |
| 55 | to take advantage of cache-tree information in the index. |
| 56 | |
Junio C Hamano | 89bdb3b | 2009-05-10 06:48:14 | [diff] [blame] | 57 | (usability, bells and whistles) |
| 58 | |
Junio C Hamano | 9f10ed3 | 2009-05-26 08:38:52 | [diff] [blame] | 59 | * "git add --edit" lets users edit the whole patch text to fine-tune what |
| 60 | is added to the index. |
| 61 | |
Junio C Hamano | f7151d5 | 2009-07-19 21:31:33 | [diff] [blame] | 62 | * "git am" accepts StGIT series file as its input. |
| 63 | |
| 64 | * "git bisect skip" skips to a more randomly chosen place in the hope |
| 65 | to avoid testing a commit that is too close to a commit that is |
| 66 | already known to be untestable. |
| 67 | |
| 68 | * "git cvsexportcommit" learned -k option to stop CVS keywords expansion |
| 69 | |
Junio C Hamano | 543f8d6 | 2009-07-29 08:35:21 | [diff] [blame] | 70 | * "git fast-export" learned to handle history simplification more |
| 71 | gracefully. |
| 72 | |
| 73 | * "git fast-export" learned an option --tag-of-filtered-object to handle |
| 74 | dangling tags resulting from history simplification more usefully. |
| 75 | |
Junio C Hamano | f7151d5 | 2009-07-19 21:31:33 | [diff] [blame] | 76 | * "git grep" learned -p option to show the location of the match using the |
| 77 | same context hunk marker "git diff" uses. |
| 78 | |
| 79 | * https transport can optionally be told that the used client |
| 80 | certificate is password protected, in which case it asks the |
| 81 | password only once. |
| 82 | |
| 83 | * "git imap-send" is IPv6 aware. |
| 84 | |
Junio C Hamano | aa2cd76 | 2009-07-26 08:14:01 | [diff] [blame] | 85 | * "git log --graph" draws graphs more compactly by using horizontal lines |
Junio C Hamano | 9f10ed3 | 2009-05-26 08:38:52 | [diff] [blame] | 86 | when able. |
| 87 | |
| 88 | * "git log --decorate" shows shorter refnames by stripping well-known |
| 89 | refs/* prefix. |
| 90 | |
Junio C Hamano | f7151d5 | 2009-07-19 21:31:33 | [diff] [blame] | 91 | * "git push $name" honors remote.$name.pushurl if present before |
| 92 | using remote.$name.url. In other words, the URL used for fetching |
| 93 | and pushing can be different. |
| 94 | |
Junio C Hamano | 9f10ed3 | 2009-05-26 08:38:52 | [diff] [blame] | 95 | * "git send-email" understands quoted aliases in .mailrc files (might |
| 96 | have to be backported to 1.6.3.X). |
| 97 | |
| 98 | * "git send-email" can fetch the sender address from the configuration |
| 99 | variable "sendmail.from" (and "sendmail.<identity>.from"). |
| 100 | |
| 101 | * "git show-branch" can color its output. |
| 102 | |
| 103 | * "add" and "update" subcommands to "git submodule" learned --reference |
| 104 | option to use local clone with references. |
| 105 | |
Junio C Hamano | f7151d5 | 2009-07-19 21:31:33 | [diff] [blame] | 106 | * "git submodule update" learned --rebase option to update checked |
| 107 | out submodules by rebasing the local changes. |
| 108 | |
| 109 | * "gitweb" can optionally use gravatar to adorn author/committer names. |
| 110 | |
Junio C Hamano | 89bdb3b | 2009-05-10 06:48:14 | [diff] [blame] | 111 | (developers) |
| 112 | |
Junio C Hamano | 9f10ed3 | 2009-05-26 08:38:52 | [diff] [blame] | 113 | * A major part of the "git bisect" wrapper has moved to C. |
Junio C Hamano | 89bdb3b | 2009-05-10 06:48:14 | [diff] [blame] | 114 | |
Junio C Hamano | aa2cd76 | 2009-07-26 08:14:01 | [diff] [blame] | 115 | * Formatting with the new version of AsciiDoc 8.4.1 is now supported. |
| 116 | |
Junio C Hamano | 89bdb3b | 2009-05-10 06:48:14 | [diff] [blame] | 117 | Fixes since v1.6.3 |
| 118 | ------------------ |
| 119 | |
| 120 | All of the fixes in v1.6.3.X maintenance series are included in this |
| 121 | release, unless otherwise noted. |
| 122 | |
| 123 | Here are fixes that this release has, but have not been backported to |
| 124 | v1.6.3.X series. |
| 125 | |
Junio C Hamano | f7151d5 | 2009-07-19 21:31:33 | [diff] [blame] | 126 | * "git diff-tree -r -t" used to omit new or removed directories from |
| 127 | the output. df533f3 (diff-tree -r -t: include added/removed |
| 128 | directories in the output, 2009-06-13) may need to be cherry-picked |
| 129 | to backport this fix. |
| 130 | |
Junio C Hamano | 9f10ed3 | 2009-05-26 08:38:52 | [diff] [blame] | 131 | * The way Git.pm sets up a Repository object was not friendly to callers |
| 132 | that chdir around. It now internally records the repository location |
| 133 | as an absolute path when autodetected. |
Junio C Hamano | 89bdb3b | 2009-05-10 06:48:14 | [diff] [blame] | 134 | |
Junio C Hamano | d594fb6 | 2009-07-25 09:09:54 | [diff] [blame] | 135 | * Removing a section with "git config --remove-section", when its |
| 136 | section header has a variable definition on the same line, lost |
| 137 | that variable definition. |
| 138 | |
Junio C Hamano | 543f8d6 | 2009-07-29 08:35:21 | [diff] [blame] | 139 | * "git rebase -p --onto" used to always leave side branches of a merge |
| 140 | intact, even when both branches are subject to rewriting. |
| 141 | |
Junio C Hamano | d594fb6 | 2009-07-25 09:09:54 | [diff] [blame] | 142 | * "git repack" used to faithfully follow grafts and considered true |
| 143 | parents recorded in the commit object unreachable from the commit. |
| 144 | After such a repacking, you cannot remove grafts without corrupting |
| 145 | the repository. |
| 146 | |
Junio C Hamano | aa2cd76 | 2009-07-26 08:14:01 | [diff] [blame] | 147 | * "git send-email" did not detect erroneous loops in alias expansion. |