| Junio C Hamano | a75069c | 2007-09-04 01:19:24 | [diff] [blame] | 1 | GIT v1.5.4 Release Notes | 
 | 2 | ======================== | 
 | 3 |  | 
| Junio C Hamano | 0a16b95 | 2007-12-02 18:56:34 | [diff] [blame] | 4 | Removal | 
 | 5 | ------- | 
 | 6 |  | 
| Junio C Hamano | 5825687 | 2007-12-04 08:31:13 | [diff] [blame] | 7 |  * "git svnimport" was removed in favor of "git svn". It is still there | 
 | 8 |  in the source tree (contrib/examples) but unsupported. | 
| Junio C Hamano | 0a16b95 | 2007-12-02 18:56:34 | [diff] [blame] | 9 |  | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 10 |  * As git-commit and git-status have been rewritten, "git runstatus" | 
 | 11 |  helper script lost all its users and has been removed. | 
 | 12 |  | 
| Junio C Hamano | ebc53dc | 2008-01-24 07:28:49 | [diff] [blame] | 13 |  | 
| Junio C Hamano | f7bb669 | 2008-01-27 08:23:46 | [diff] [blame] | 14 | Temporarily disabled | 
| Junio C Hamano | ebc53dc | 2008-01-24 07:28:49 | [diff] [blame] | 15 | -------------------- | 
 | 16 |  | 
 | 17 |  * "git http-push" is known not to work well with cURL library older | 
 | 18 |  than 7.16, and we had reports of repository corruption. It is | 
 | 19 |  disabled on such platforms for now. Unfortunately, 1.5.3.8 shares | 
 | 20 |  the same issue. In other words, this does not mean you will be | 
 | 21 |  fine if you stick to an older git release. For now, please do not | 
 | 22 |  use http-push from older git with cURL older than 7.16 if you | 
 | 23 |  value your data. A proper fix will hopefully materialize in | 
 | 24 |  later versions. | 
| Junio C Hamano | 0e66113 | 2008-01-21 02:37:44 | [diff] [blame] | 25 |  | 
| Junio C Hamano | 0a16b95 | 2007-12-02 18:56:34 | [diff] [blame] | 26 |  | 
| Junio C Hamano | 976c0c4 | 2007-12-01 21:57:14 | [diff] [blame] | 27 | Deprecation notices | 
 | 28 | ------------------- | 
 | 29 |  | 
| Junio C Hamano | f7bb669 | 2008-01-27 08:23:46 | [diff] [blame] | 30 |  * From v1.6.0, git will by default install dashed form of commands | 
 | 31 |  (e.g. "git-commit") outside of users' normal $PATH, and will install | 
 | 32 |  only selected commands ("git" itself, and "gitk") in $PATH. This | 
 | 33 |  implies: | 
| Junio C Hamano | 976c0c4 | 2007-12-01 21:57:14 | [diff] [blame] | 34 |  | 
| Junio C Hamano | e27cbd2 | 2007-12-21 17:57:33 | [diff] [blame] | 35 |  - Using dashed forms of git commands (e.g. "git-commit") from the | 
| Junio C Hamano | 976c0c4 | 2007-12-01 21:57:14 | [diff] [blame] | 36 |  command line has been informally deprecated since early 2006, but | 
 | 37 |  now it officially is, and will be removed in the future. Use | 
| Junio C Hamano | 98448e5 | 2008-02-02 04:30:23 | [diff] [blame] | 38 |  dash-less forms (e.g. "git commit") instead. | 
| Junio C Hamano | 976c0c4 | 2007-12-01 21:57:14 | [diff] [blame] | 39 |  | 
| Junio C Hamano | e27cbd2 | 2007-12-21 17:57:33 | [diff] [blame] | 40 |  - Using dashed forms from your scripts, without first prepending the | 
| Junio C Hamano | 976c0c4 | 2007-12-01 21:57:14 | [diff] [blame] | 41 |  return value from "git --exec-path" to the scripts' PATH, has been | 
 | 42 |  informally deprecated since early 2006, but now it officially is. | 
 | 43 |  | 
| Junio C Hamano | e27cbd2 | 2007-12-21 17:57:33 | [diff] [blame] | 44 |  - Use of dashed forms with "PATH=$(git --exec-path):$PATH; export | 
| Junio C Hamano | 976c0c4 | 2007-12-01 21:57:14 | [diff] [blame] | 45 |  PATH" early in your script is not deprecated with this change. | 
 | 46 |  | 
| Junio C Hamano | f7bb669 | 2008-01-27 08:23:46 | [diff] [blame] | 47 |  Users are strongly encouraged to adjust their habits and scripts now | 
 | 48 |  to prepare for this change. | 
| Junio C Hamano | 976c0c4 | 2007-12-01 21:57:14 | [diff] [blame] | 49 |  | 
 | 50 |  * The post-receive hook was introduced in March 2007 to supersede | 
| Junio C Hamano | e27cbd2 | 2007-12-21 17:57:33 | [diff] [blame] | 51 |  the post-update hook, primarily to overcome the command line length | 
| Junio C Hamano | 976c0c4 | 2007-12-01 21:57:14 | [diff] [blame] | 52 |  limitation of the latter. Use of post-update hook will be deprecated | 
| Junio C Hamano | d83dd0f | 2007-12-20 02:50:13 | [diff] [blame] | 53 |  in future versions of git, starting from v1.6.0. | 
| Junio C Hamano | 976c0c4 | 2007-12-01 21:57:14 | [diff] [blame] | 54 |  | 
| Junio C Hamano | 0a16b95 | 2007-12-02 18:56:34 | [diff] [blame] | 55 |  * "git lost-found" was deprecated in favor of "git fsck"'s --lost-found | 
 | 56 |  option, and will be removed in the future. | 
 | 57 |  | 
 | 58 |  * "git peek-remote" is deprecated, as "git ls-remote" was written in C | 
| Junio C Hamano | e27cbd2 | 2007-12-21 17:57:33 | [diff] [blame] | 59 |  and works for all transports; "git peek-remote" will be removed in | 
 | 60 |  the future. | 
| Junio C Hamano | 0a16b95 | 2007-12-02 18:56:34 | [diff] [blame] | 61 |  | 
| Junio C Hamano | be62189 | 2008-01-18 10:20:16 | [diff] [blame] | 62 |  * "git repo-config" which was an old name for "git config" command | 
 | 63 |  has been supported without being advertised for a long time. The | 
 | 64 |  next feature release will remove it. | 
 | 65 |  | 
| Junio C Hamano | d83dd0f | 2007-12-20 02:50:13 | [diff] [blame] | 66 |  * From v1.6.0, the repack.usedeltabaseoffset config option will default | 
| Junio C Hamano | e27cbd2 | 2007-12-21 17:57:33 | [diff] [blame] | 67 |  to true, which will give denser packfiles (i.e. more efficient storage). | 
| Junio C Hamano | 878cc1e | 2007-12-14 08:35:13 | [diff] [blame] | 68 |  The downside is that git older than version 1.4.4 will not be able | 
 | 69 |  to directly use a repository packed using this setting. | 
 | 70 |  | 
| Junio C Hamano | d83dd0f | 2007-12-20 02:50:13 | [diff] [blame] | 71 |  * From v1.6.0, the pack.indexversion config option will default to 2, | 
| Junio C Hamano | 878cc1e | 2007-12-14 08:35:13 | [diff] [blame] | 72 |  which is slightly more efficient, and makes repacking more immune to | 
 | 73 |  data corruptions. Git older than version 1.5.2 may revert to version 1 | 
 | 74 |  of the pack index with a manual "git index-pack" to be able to directly | 
 | 75 |  access corresponding pack files. | 
 | 76 |  | 
| Junio C Hamano | 976c0c4 | 2007-12-01 21:57:14 | [diff] [blame] | 77 |  | 
| Junio C Hamano | a75069c | 2007-09-04 01:19:24 | [diff] [blame] | 78 | Updates since v1.5.3 | 
 | 79 | -------------------- | 
 | 80 |  | 
| Junio C Hamano | e77b015 | 2008-01-12 06:44:17 | [diff] [blame] | 81 |  * Comes with much improved gitk, with i18n. | 
| Junio C Hamano | fb4fa4e | 2007-10-30 08:24:24 | [diff] [blame] | 82 |  | 
| Junio C Hamano | f7bb669 | 2008-01-27 08:23:46 | [diff] [blame] | 83 |  * Comes with git-gui 0.9.2 with i18n. | 
| Junio C Hamano | 5825687 | 2007-12-04 08:31:13 | [diff] [blame] | 84 |  | 
 | 85 |  * gitk is now merged as a subdirectory of git.git project, in | 
 | 86 |  preparation for its i18n. | 
| Junio C Hamano | 9d2bbb7 | 2007-11-25 04:56:07 | [diff] [blame] | 87 |  | 
| Junio C Hamano | e27cbd2 | 2007-12-21 17:57:33 | [diff] [blame] | 88 |  * progress displays from many commands are a lot nicer to the eye. | 
| Junio C Hamano | 0a16b95 | 2007-12-02 18:56:34 | [diff] [blame] | 89 |  Transfer commands show throughput data. | 
| Junio C Hamano | 2d7f027 | 2007-11-09 10:03:46 | [diff] [blame] | 90 |  | 
| Junio C Hamano | 976c0c4 | 2007-12-01 21:57:14 | [diff] [blame] | 91 |  * many commands that pay attention to per-directory .gitignore now do | 
 | 92 |  so lazily, which makes the usual case go much faster. | 
 | 93 |  | 
| Junio C Hamano | 0a16b95 | 2007-12-02 18:56:34 | [diff] [blame] | 94 |  * Output processing for '--pretty=format:<user format>' has been | 
 | 95 |  optimized. | 
| Junio C Hamano | 63777e2 | 2007-11-17 20:52:16 | [diff] [blame] | 96 |  | 
| Junio C Hamano | e27cbd2 | 2007-12-21 17:57:33 | [diff] [blame] | 97 |  * Rename detection of diff family while detecting exact matches has | 
| Junio C Hamano | 976c0c4 | 2007-12-01 21:57:14 | [diff] [blame] | 98 |  been greatly optimized. | 
 | 99 |  | 
| Junio C Hamano | e27cbd2 | 2007-12-21 17:57:33 | [diff] [blame] | 100 |  * Rename detection of diff family tries to make more natural looking | 
 | 101 |  pairing. Earlier, if multiple identical rename sources were | 
 | 102 |  found in the preimage, the source used was picked pretty much at random. | 
| Junio C Hamano | 2d7f027 | 2007-11-09 10:03:46 | [diff] [blame] | 103 |  | 
| Junio C Hamano | 5825687 | 2007-12-04 08:31:13 | [diff] [blame] | 104 |  * Value "true" for color.diff and color.status configuration used to | 
 | 105 |  mean "always" (even when the output is not going to a terminal). | 
 | 106 |  This has been corrected to mean the same thing as "auto". | 
 | 107 |  | 
| Junio C Hamano | d83dd0f | 2007-12-20 02:50:13 | [diff] [blame] | 108 |  * "git diff" Porcelain now respects diff.external configuration, which | 
 | 109 |  is another way to specify GIT_EXTERNAL_DIFF. | 
 | 110 |  | 
| Junio C Hamano | 554da79 | 2007-12-27 03:29:58 | [diff] [blame] | 111 |  * "git diff" can be told to use different prefixes other than | 
 | 112 |  "a/" and "b/" e.g. "git diff --src-prefix=l/ --dst-prefix=k/". | 
 | 113 |  | 
 | 114 |  * "git diff" sometimes did not quote paths with funny | 
 | 115 |  characters properly. | 
 | 116 |  | 
 | 117 |  * "git log" (and any revision traversal commands) misbehaved | 
 | 118 |  when --diff-filter is given but was not asked to actually | 
 | 119 |  produce diff. | 
 | 120 |  | 
| Junio C Hamano | 5825687 | 2007-12-04 08:31:13 | [diff] [blame] | 121 |  * HTTP proxy can be specified per remote repository using | 
 | 122 |  remote.*.httpproxy configuration, or global http.proxy configuration | 
 | 123 |  variable. | 
 | 124 |  | 
 | 125 |  * Various Perforce importer updates. | 
 | 126 |  | 
 | 127 |  * Example update and post-receive hooks have been improved. | 
 | 128 |  | 
 | 129 |  * Any command that wants to take a commit object name can now use | 
 | 130 |  ":/string" syntax to name a commit. | 
 | 131 |  | 
| Junio C Hamano | 0a16b95 | 2007-12-02 18:56:34 | [diff] [blame] | 132 |  * "git reset" is now built-in and its output can be squelched with -q. | 
 | 133 |  | 
| Junio C Hamano | 14b7648 | 2008-01-05 10:32:26 | [diff] [blame] | 134 |  * "git reset --hard" does not make any sense in a bare | 
 | 135 |  repository, but did not error out; fixed. | 
 | 136 |  | 
| Junio C Hamano | 0a16b95 | 2007-12-02 18:56:34 | [diff] [blame] | 137 |  * "git send-email" can optionally talk over ssmtp and use SMTP-AUTH. | 
 | 138 |  | 
 | 139 |  * "git rebase" learned --whitespace option. | 
 | 140 |  | 
 | 141 |  * In "git rebase", when you decide not to replay a particular change | 
 | 142 |  after the command stopped with a conflict, you can say "git rebase | 
 | 143 |  --skip" without first running "git reset --hard", as the command now | 
 | 144 |  runs it for you. | 
 | 145 |  | 
| Junio C Hamano | 5825687 | 2007-12-04 08:31:13 | [diff] [blame] | 146 |  * "git rebase --interactive" mode can now work on detached HEAD. | 
 | 147 |  | 
| Junio C Hamano | e27cbd2 | 2007-12-21 17:57:33 | [diff] [blame] | 148 |  * Other minor to serious bugs in "git rebase -i" have been fixed. | 
| Junio C Hamano | d83dd0f | 2007-12-20 02:50:13 | [diff] [blame] | 149 |  | 
| Junio C Hamano | 5825687 | 2007-12-04 08:31:13 | [diff] [blame] | 150 |  * "git rebase" now detaches head during its operation, so after a | 
 | 151 |  successful "git rebase" operation, the reflog entry branch@{1} for | 
 | 152 |  the current branch points at the commit before the rebase was | 
 | 153 |  started. | 
 | 154 |  | 
 | 155 |  * "git rebase -i" also triggers rerere to help your repeated merges. | 
 | 156 |  | 
| Junio C Hamano | 0a16b95 | 2007-12-02 18:56:34 | [diff] [blame] | 157 |  * "git merge" can call the "post-merge" hook. | 
 | 158 |  | 
 | 159 |  * "git pack-objects" can optionally run deltification with multiple | 
 | 160 |  threads. | 
 | 161 |  | 
 | 162 |  * "git archive" can optionally substitute keywords in files marked with | 
 | 163 |  export-subst attribute. | 
 | 164 |  | 
 | 165 |  * "git cherry-pick" made a misguided attempt to repeat the original | 
 | 166 |  command line in the generated log message, when told to cherry-pick a | 
 | 167 |  commit by naming a tag that points at it. It does not anymore. | 
 | 168 |  | 
| Junio C Hamano | 98448e5 | 2008-02-02 04:30:23 | [diff] [blame] | 169 |  * "git for-each-ref" learned %(xxxdate:<date-format>) syntax to show the | 
| Junio C Hamano | 0a16b95 | 2007-12-02 18:56:34 | [diff] [blame] | 170 |  various date fields in different formats. | 
 | 171 |  | 
 | 172 |  * "git gc --auto" is a low-impact way to automatically run a variant of | 
 | 173 |  "git repack" that does not lose unreferenced objects (read: safer | 
 | 174 |  than the usual one) after the user accumulates too many loose | 
 | 175 |  objects. | 
 | 176 |  | 
| Junio C Hamano | 5825687 | 2007-12-04 08:31:13 | [diff] [blame] | 177 |  * "git clean" has been rewritten in C. | 
 | 178 |  | 
| Junio C Hamano | 0a16b95 | 2007-12-02 18:56:34 | [diff] [blame] | 179 |  * You need to explicitly set clean.requireForce to "false" to allow | 
 | 180 |  "git clean" without -f to do any damage (lack of the configuration | 
 | 181 |  variable used to mean "do not require -f option to lose untracked | 
 | 182 |  files", but we now use the safer default). | 
 | 183 |  | 
| Junio C Hamano | c9796d2 | 2007-12-10 10:07:37 | [diff] [blame] | 184 |  * The kinds of whitespace errors "git diff" and "git apply" notice (and | 
 | 185 |  fix) can be controlled via 'core.whitespace' configuration variable | 
 | 186 |  and 'whitespace' attribute in .gitattributes file. | 
 | 187 |  | 
| Junio C Hamano | 0a16b95 | 2007-12-02 18:56:34 | [diff] [blame] | 188 |  * "git push" learned --dry-run option to show what would happen if a | 
 | 189 |  push is run. | 
 | 190 |  | 
 | 191 |  * "git push" does not update a tracking ref on the local side when the | 
 | 192 |  remote refused to update the corresponding ref. | 
 | 193 |  | 
 | 194 |  * "git push" learned --mirror option. This is to push the local refs | 
 | 195 |  one-to-one to the remote, and deletes refs from the remote that do | 
 | 196 |  not exist anymore in the repository on the pushing side. | 
 | 197 |  | 
| Junio C Hamano | 5825687 | 2007-12-04 08:31:13 | [diff] [blame] | 198 |  * "git push" can remove a corrupt ref at the remote site with the usual | 
 | 199 |  ":ref" refspec. | 
 | 200 |  | 
| Junio C Hamano | 0a16b95 | 2007-12-02 18:56:34 | [diff] [blame] | 201 |  * "git remote" knows --mirror mode. This is to set up configuration to | 
 | 202 |  push into a remote repository to store local branch heads to the same | 
 | 203 |  branch on the remote side, and remove branch heads locally removed | 
 | 204 |  from local repository at the same time. Suitable for pushing into a | 
 | 205 |  back-up repository. | 
 | 206 |  | 
 | 207 |  * "git remote" learned "rm" subcommand. | 
 | 208 |  | 
| Junio C Hamano | e27cbd2 | 2007-12-21 17:57:33 | [diff] [blame] | 209 |  * "git cvsserver" can be run via "git shell". Also, "cvs" is | 
 | 210 |  recognized as a synonym for "git cvsserver", so that CVS users | 
 | 211 |  can be switched to git just by changing their login shell. | 
| Junio C Hamano | 0a16b95 | 2007-12-02 18:56:34 | [diff] [blame] | 212 |  | 
| Junio C Hamano | 00b8b63 | 2007-12-07 09:50:49 | [diff] [blame] | 213 |  * "git cvsserver" acts more like receive-pack by running post-receive | 
 | 214 |  and post-update hooks. | 
 | 215 |  | 
| Junio C Hamano | 0a16b95 | 2007-12-02 18:56:34 | [diff] [blame] | 216 |  * "git am" and "git rebase" are far less verbose. | 
 | 217 |  | 
 | 218 |  * "git pull" learned to pass --[no-]ff option to underlying "git | 
 | 219 |  merge". | 
 | 220 |  | 
| Junio C Hamano | 5825687 | 2007-12-04 08:31:13 | [diff] [blame] | 221 |  * "git pull --rebase" is a different way to integrate what you fetched | 
 | 222 |  into your current branch. | 
 | 223 |  | 
| Junio C Hamano | 98448e5 | 2008-02-02 04:30:23 | [diff] [blame] | 224 |  * "git fast-export" produces data-stream that can be fed to fast-import | 
| Junio C Hamano | 5825687 | 2007-12-04 08:31:13 | [diff] [blame] | 225 |  to reproduce the history recorded in a git repository. | 
 | 226 |  | 
| Junio C Hamano | 00b8b63 | 2007-12-07 09:50:49 | [diff] [blame] | 227 |  * "git add -i" takes pathspecs to limit the set of files to work on. | 
 | 228 |  | 
 | 229 |  * "git add -p" is a short-hand to go directly to the selective patch | 
 | 230 |  subcommand in the interactive command loop and to exit when done. | 
 | 231 |  | 
| Junio C Hamano | 35738e8 | 2008-01-07 07:55:46 | [diff] [blame] | 232 |  * "git add -i" UI has been colorized. The interactive prompt | 
 | 233 |  and menu can be colored by setting color.interactive | 
 | 234 |  configuration. The diff output (including the hunk picker) | 
 | 235 |  are colored with color.diff configuration. | 
| Junio C Hamano | 00b8b63 | 2007-12-07 09:50:49 | [diff] [blame] | 236 |  | 
| Junio C Hamano | 5825687 | 2007-12-04 08:31:13 | [diff] [blame] | 237 |  * "git commit --allow-empty" allows you to create a single-parent | 
 | 238 |  commit that records the same tree as its parent, overriding the usual | 
 | 239 |  safety valve. | 
 | 240 |  | 
 | 241 |  * "git commit --amend" can amend a merge that does not change the tree | 
 | 242 |  from its first parent. | 
 | 243 |  | 
| Junio C Hamano | 554da79 | 2007-12-27 03:29:58 | [diff] [blame] | 244 |  * "git commit" used to unconditionally strip comment lines that | 
| Junio C Hamano | f7bb669 | 2008-01-27 08:23:46 | [diff] [blame] | 245 |  began with '#' and removed excess blank lines. This behavior has | 
 | 246 |  been made configurable. | 
| Junio C Hamano | 554da79 | 2007-12-27 03:29:58 | [diff] [blame] | 247 |  | 
| Junio C Hamano | 00b8b63 | 2007-12-07 09:50:49 | [diff] [blame] | 248 |  * "git commit" has been rewritten in C. | 
 | 249 |  | 
| Junio C Hamano | 5825687 | 2007-12-04 08:31:13 | [diff] [blame] | 250 |  * "git stash random-text" does not create a new stash anymore. It was | 
 | 251 |  a UI mistake. Use "git stash save random-text", or "git stash" | 
 | 252 |  (without extra args) for that. | 
 | 253 |  | 
| Junio C Hamano | 35738e8 | 2008-01-07 07:55:46 | [diff] [blame] | 254 |  * "git stash clear extra-text" does not clear the whole stash | 
 | 255 |  anymore. It is tempting to expect "git stash clear stash@{2}" | 
 | 256 |  to drop only a single named stash entry, and it is rude to | 
 | 257 |  discard everything when that is asked (but not provided). | 
 | 258 |  | 
| Junio C Hamano | 5825687 | 2007-12-04 08:31:13 | [diff] [blame] | 259 |  * "git prune --expire <time>" can exempt young loose objects from | 
 | 260 |  getting pruned. | 
 | 261 |  | 
 | 262 |  * "git branch --contains <commit>" can list branches that are | 
 | 263 |  descendants of a given commit. | 
| Junio C Hamano | 0a16b95 | 2007-12-02 18:56:34 | [diff] [blame] | 264 |  | 
 | 265 |  * "git log" learned --early-output option to help interactive GUI | 
 | 266 |  implementations. | 
 | 267 |  | 
 | 268 |  * "git bisect" learned "skip" action to mark untestable commits. | 
 | 269 |  | 
| Junio C Hamano | c9796d2 | 2007-12-10 10:07:37 | [diff] [blame] | 270 |  * "git bisect visualize" learned a shorter synonym "git bisect view". | 
 | 271 |  | 
 | 272 |  * "git bisect visualize" runs "git log" in a non-windowed | 
 | 273 |  environments. It also can be told what command to run (e.g. "git | 
 | 274 |  bisect visualize tig"). | 
 | 275 |  | 
| Junio C Hamano | 0a16b95 | 2007-12-02 18:56:34 | [diff] [blame] | 276 |  * "git format-patch" learned "format.numbered" configuration variable | 
 | 277 |  to automatically turn --numbered option on when more than one commits | 
 | 278 |  are formatted. | 
 | 279 |  | 
 | 280 |  * "git ls-files" learned "--exclude-standard" to use the canned set of | 
 | 281 |  exclude files. | 
 | 282 |  | 
| Junio C Hamano | 0a16b95 | 2007-12-02 18:56:34 | [diff] [blame] | 283 |  * "git tag -a -f existing" begins the editor session using the existing | 
 | 284 |  annotation message. | 
 | 285 |  | 
 | 286 |  * "git tag -m one -m bar" (multiple -m options) behaves similarly to | 
 | 287 |  "git commit"; the parameters to -m options are formatted as separate | 
 | 288 |  paragraphs. | 
 | 289 |  | 
| Junio C Hamano | d83dd0f | 2007-12-20 02:50:13 | [diff] [blame] | 290 |  * The format "git show" outputs an annotated tag has been updated to | 
 | 291 |  include "Tagger: " and "Date: " lines from the tag itself. Strictly | 
 | 292 |  speaking this is a backward incompatible change, but this is a | 
| Junio C Hamano | e27cbd2 | 2007-12-21 17:57:33 | [diff] [blame] | 293 |  reasonable usability fix and people's scripts shouldn't have been | 
| Junio C Hamano | d83dd0f | 2007-12-20 02:50:13 | [diff] [blame] | 294 |  relying on the exact output from "git show" Porcelain anyway. | 
 | 295 |  | 
| Junio C Hamano | 554da79 | 2007-12-27 03:29:58 | [diff] [blame] | 296 |  * "git cvsimport" did not notice errors from underlying "cvsps" | 
 | 297 |  and produced a corrupt import silently. | 
 | 298 |  | 
| Junio C Hamano | 0a16b95 | 2007-12-02 18:56:34 | [diff] [blame] | 299 |  * "git cvsexportcommit" learned -w option to specify and switch to the | 
 | 300 |  CVS working directory. | 
 | 301 |  | 
 | 302 |  * "git checkout" from a subdirectory learned to use "../path" to allow | 
 | 303 |  checking out a path outside the current directory without cd'ing up. | 
 | 304 |  | 
| Junio C Hamano | c9796d2 | 2007-12-10 10:07:37 | [diff] [blame] | 305 |  * "git checkout" from and to detached HEAD leaves a bit more | 
 | 306 |  information in the reflog. | 
 | 307 |  | 
| Junio C Hamano | 0a16b95 | 2007-12-02 18:56:34 | [diff] [blame] | 308 |  * "git send-email --dry-run" shows full headers for easier diagnosis. | 
 | 309 |  | 
 | 310 |  * "git merge-ours" is now built-in. | 
 | 311 |  | 
 | 312 |  * "git svn" learned "info" and "show-externals" subcommands. | 
 | 313 |  | 
 | 314 |  * "git svn" run from a subdirectory failed to read settings from the | 
 | 315 |  .git/config. | 
 | 316 |  | 
 | 317 |  * "git svn" learned --use-log-author option, which picks up more | 
 | 318 |  descriptive name from From: and Signed-off-by: lines in the commit | 
 | 319 |  message. | 
 | 320 |  | 
| Junio C Hamano | 0c0da5f | 2007-12-13 02:45:30 | [diff] [blame] | 321 |  * "git svn" wasted way too much disk to record revision mappings | 
 | 322 |  between svn and git; a new representation that is much more compact | 
 | 323 |  for this information has been introduced to correct this. | 
 | 324 |  | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 325 |  * "git svn" left temporary index files it used without cleaning them | 
 | 326 |  up; this was corrected. | 
 | 327 |  | 
| Junio C Hamano | c9796d2 | 2007-12-10 10:07:37 | [diff] [blame] | 328 |  * "git status" from a subdirectory now shows relative paths, which | 
 | 329 |  makes copy-and-pasting for git-checkout/git-add/git-rm easier. The | 
| Junio C Hamano | f7bb669 | 2008-01-27 08:23:46 | [diff] [blame] | 330 |  traditional behavior to show the full path relative to the top of | 
| Junio C Hamano | c9796d2 | 2007-12-10 10:07:37 | [diff] [blame] | 331 |  the work tree can be had by setting status.relativepaths | 
| Junio C Hamano | e27cbd2 | 2007-12-21 17:57:33 | [diff] [blame] | 332 |  configuration variable to false. | 
| Junio C Hamano | 0a16b95 | 2007-12-02 18:56:34 | [diff] [blame] | 333 |  | 
| Junio C Hamano | 0c0da5f | 2007-12-13 02:45:30 | [diff] [blame] | 334 |  * "git blame" kept text for each annotated revision in core needlessly; | 
 | 335 |  this has been corrected. | 
 | 336 |  | 
 | 337 |  * "git shortlog" learned to default to HEAD when the standard input is | 
 | 338 |  a terminal and the user did not give any revision parameter. | 
 | 339 |  | 
 | 340 |  * "git shortlog" learned "-e" option to show e-mail addresses as well as | 
 | 341 |  authors' names. | 
 | 342 |  | 
 | 343 |  * "git help" learned "-w" option to show documentation in browsers. | 
 | 344 |  | 
| Junio C Hamano | 98448e5 | 2008-02-02 04:30:23 | [diff] [blame] | 345 |  * In addition there are quite a few internal clean-ups. Notably: | 
| Junio C Hamano | 2d7f027 | 2007-11-09 10:03:46 | [diff] [blame] | 346 |  | 
 | 347 |  - many fork/exec have been replaced with run-command API, | 
 | 348 |  brought from the msysgit effort. | 
 | 349 |  | 
 | 350 |  - introduction and more use of the option parser API. | 
 | 351 |  | 
 | 352 |  - enhancement and more use of the strbuf API. | 
 | 353 |  | 
| Junio C Hamano | f7bb669 | 2008-01-27 08:23:46 | [diff] [blame] | 354 |  * Makefile tweaks to support HP-UX is in. | 
| Junio C Hamano | 2d7f027 | 2007-11-09 10:03:46 | [diff] [blame] | 355 |  | 
| Junio C Hamano | a75069c | 2007-09-04 01:19:24 | [diff] [blame] | 356 | Fixes since v1.5.3 | 
 | 357 | ------------------ | 
 | 358 |  | 
 | 359 | All of the fixes in v1.5.3 maintenance series are included in | 
 | 360 | this release, unless otherwise noted. | 
 | 361 |  | 
| Junio C Hamano | 0a16b95 | 2007-12-02 18:56:34 | [diff] [blame] | 362 | These fixes are only in v1.5.4 and not backported to v1.5.3 maintenance | 
 | 363 | series. | 
| Junio C Hamano | 63777e2 | 2007-11-17 20:52:16 | [diff] [blame] | 364 |  | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 365 |  * The way "git diff --check" behaves is much more consistent with the way | 
 | 366 |  "git apply --whitespace=warn" works. | 
 | 367 |  | 
| Junio C Hamano | 98448e5 | 2008-02-02 04:30:23 | [diff] [blame] | 368 |  * "git svn" talking with the SVN over HTTP will correctly quote branch | 
| Junio C Hamano | 0a16b95 | 2007-12-02 18:56:34 | [diff] [blame] | 369 |  and project names. | 
| Junio C Hamano | e125866 | 2007-11-19 05:03:19 | [diff] [blame] | 370 |  | 
| Junio C Hamano | 00b8b63 | 2007-12-07 09:50:49 | [diff] [blame] | 371 |  * "git config" did not work correctly on platforms that define | 
 | 372 |  REG_NOMATCH to an even number. | 
 | 373 |  | 
| Junio C Hamano | 35738e8 | 2008-01-07 07:55:46 | [diff] [blame] | 374 |  * Recent versions of AsciiDoc 8 has a change to break our | 
 | 375 |  documentation; a workaround has been implemented. | 
 | 376 |  | 
| Junio C Hamano | 0e66113 | 2008-01-21 02:37:44 | [diff] [blame] | 377 |  * "git diff --color-words" colored context lines in a wrong color. |