shortlog manpage documentation: work around asciidoc markup issues
[gitweb.git] / Documentation / RelNotes-1.5.4.txt
index c40fd1805f08debc9df5fda9b92671a51051c444..528b26f7c7a6f8476e261040dcffe08d10e331cc 100644 (file)
@@ -7,41 +7,55 @@ Removal
  * "git svnimport" was removed in favor of "git svn".  It is still there
    in the source tree (contrib/examples) but unsupported.
 
+ * As git-commit and git-status have been rewritten, "git runstatus"
+   helper script lost all its users and has been removed.
+
 
 Deprecation notices
 -------------------
 
- * Next feature release of git (this change is scheduled for v1.5.5 but
-   it could slip) will by default install dashed form of commands
-   (e.g. "git-commit") outside of users' normal $PATH, and will install
-   only selected commands ("git" itself, and "gitk") in $PATH.  This
-   implies:
+ * The next feature release of git (this change is scheduled for v1.6.0)
+   will by default install dashed form of commands (e.g. "git-commit")
+   outside of users' normal $PATH, and will install only selected
+   commands ("git" itself, and "gitk") in $PATH.  This implies:
 
-   - Using dashed form of git commands (e.g. "git-commit") from the
+   - Using dashed forms of git commands (e.g. "git-commit") from the
      command line has been informally deprecated since early 2006, but
      now it officially is, and will be removed in the future.  Use
-     dashless form (e.g. "git commit") instead.
+     dashless forms (e.g. "git commit") instead.
 
-   - Using dashed from from your scripts, without first prepending the
+   - Using dashed forms from your scripts, without first prepending the
      return value from "git --exec-path" to the scripts' PATH, has been
      informally deprecated since early 2006, but now it officially is.
 
-   - Use of dashed form with "PATH=$(git --exec-path):$PATH; export
+   - Use of dashed forms with "PATH=$(git --exec-path):$PATH; export
      PATH" early in your script is not deprecated with this change.
 
   Users are strongly encouraged to adjust their habits and scripts now
   to prepare for this.
 
  * The post-receive hook was introduced in March 2007 to supersede
-   post-update hook, primarily to overcome the command line length
+   the post-update hook, primarily to overcome the command line length
    limitation of the latter.  Use of post-update hook will be deprecated
-   in future versions of git, perhaps in v1.5.5.
+   in future versions of git, starting from v1.6.0.
 
  * "git lost-found" was deprecated in favor of "git fsck"'s --lost-found
    option, and will be removed in the future.
 
  * "git peek-remote" is deprecated, as "git ls-remote" was written in C
-   and works for all transports, and will be removed in the future.
+   and works for all transports; "git peek-remote" will be removed in
+   the future.
+
+ * From v1.6.0, the repack.usedeltabaseoffset config option will default
+   to true, which will give denser packfiles (i.e. more efficient storage).
+   The downside is that git older than version 1.4.4 will not be able
+   to directly use a repository packed using this setting.
+
+ * From v1.6.0, the pack.indexversion config option will default to 2,
+   which is slightly more efficient, and makes repacking more immune to
+   data corruptions.  Git older than version 1.5.2 may revert to version 1
+   of the pack index with a manual "git index-pack" to be able to directly
+   access corresponding pack files.
 
 
 Updates since v1.5.3
@@ -54,7 +68,7 @@ Updates since v1.5.3
  * gitk is now merged as a subdirectory of git.git project, in
    preparation for its i18n.
 
- * progress display from many commands are a lot nicer to the eye.
+ * progress displays from many commands are a lot nicer to the eye.
    Transfer commands show throughput data.
 
  * many commands that pay attention to per-directory .gitignore now do
@@ -63,17 +77,20 @@ Updates since v1.5.3
  * Output processing for '--pretty=format:<user format>' has been
    optimized.
 
- * Rename detection of diff family, while detecting exact matches, has
+ * Rename detection of diff family while detecting exact matches has
    been greatly optimized.
 
- * Rename detection of diff family tries to make more naturally looking
-   pairing.  Earlier if more than one identical rename sources were
-   found in the preimage, they were picked pretty much at random.
+ * Rename detection of diff family tries to make more natural looking
+   pairing.  Earlier, if multiple identical rename sources were
+   found in the preimage, the source used was picked pretty much at random.
 
  * Value "true" for color.diff and color.status configuration used to
    mean "always" (even when the output is not going to a terminal).
    This has been corrected to mean the same thing as "auto".
 
+ * "git diff" Porcelain now respects diff.external configuration, which
+   is another way to specify GIT_EXTERNAL_DIFF.
+
  * HTTP proxy can be specified per remote repository using
    remote.*.httpproxy configuration, or global http.proxy configuration
    variable.
@@ -98,6 +115,8 @@ Updates since v1.5.3
 
  * "git rebase --interactive" mode can now work on detached HEAD.
 
+ * Other minor to serious bugs in "git rebase -i" have been fixed.
+
  * "git rebase" now detaches head during its operation, so after a
    successful "git rebase" operation, the reflog entry branch@{1} for
    the current branch points at the commit before the rebase was
@@ -132,6 +151,10 @@ Updates since v1.5.3
    variable used to mean "do not require -f option to lose untracked
    files", but we now use the safer default).
 
+ * The kinds of whitespace errors "git diff" and "git apply" notice (and
+   fix) can be controlled via 'core.whitespace' configuration variable
+   and 'whitespace' attribute in .gitattributes file.
+
  * "git push" learned --dry-run option to show what would happen if a
    push is run.
 
@@ -153,7 +176,12 @@ Updates since v1.5.3
 
  * "git remote" learned "rm" subcommand.
 
- * "git cvsserver" can be run via "git shell".
+ * "git cvsserver" can be run via "git shell".  Also, "cvs" is
+   recognized as a synonym for "git cvsserver", so that CVS users
+   can be switched to git just by changing their login shell.
+
+ * "git cvsserver" acts more like receive-pack by running post-receive
+   and post-update hooks.
 
  * "git am" and "git rebase" are far less verbose.
 
@@ -166,6 +194,13 @@ Updates since v1.5.3
  * "git fast-export" produces datastream that can be fed to fast-import
    to reproduce the history recorded in a git repository.
 
+ * "git add -i" takes pathspecs to limit the set of files to work on.
+
+ * "git add -p" is a short-hand to go directly to the selective patch
+   subcommand in the interactive command loop and to exit when done.
+
+ * "git add -i" UI has been colorized.
+
  * "git commit --allow-empty" allows you to create a single-parent
    commit that records the same tree as its parent, overriding the usual
    safety valve.
@@ -173,6 +208,8 @@ Updates since v1.5.3
  * "git commit --amend" can amend a merge that does not change the tree
    from its first parent.
 
+ * "git commit" has been rewritten in C.
+
  * "git stash random-text" does not create a new stash anymore.  It was
    a UI mistake.  Use "git stash save random-text", or "git stash"
    (without extra args) for that.
@@ -188,6 +225,12 @@ Updates since v1.5.3
 
  * "git bisect" learned "skip" action to mark untestable commits.
 
+ * "git bisect visualize" learned a shorter synonym "git bisect view".
+
+ * "git bisect visualize" runs "git log" in a non-windowed
+   environments.  It also can be told what command to run (e.g. "git
+   bisect visualize tig").
+
  * "git format-patch" learned "format.numbered" configuration variable
    to automatically turn --numbered option on when more than one commits
    are formatted.
@@ -202,12 +245,21 @@ Updates since v1.5.3
    "git commit"; the parameters to -m options are formatted as separate
    paragraphs.
 
+ * The format "git show" outputs an annotated tag has been updated to
+   include "Tagger: " and "Date: " lines from the tag itself.  Strictly
+   speaking this is a backward incompatible change, but this is a
+   reasonable usability fix and people's scripts shouldn't have been
+   relying on the exact output from "git show" Porcelain anyway.
+
  * "git cvsexportcommit" learned -w option to specify and switch to the
    CVS working directory.
 
  * "git checkout" from a subdirectory learned to use "../path" to allow
    checking out a path outside the current directory without cd'ing up.
 
+ * "git checkout" from and to detached HEAD leaves a bit more
+   information in the reflog.
+
  * "git send-email --dry-run" shows full headers for easier diagnosis.
 
  * "git merge-ours" is now built-in.
@@ -221,11 +273,29 @@ Updates since v1.5.3
    descriptive name from From: and Signed-off-by: lines in the commit
    message.
 
- * "git status" from a subdirectory now shows relative paths which makes
-   copy-and-pasting for git-checkout/git-add/git-rm easier.
+ * "git svn" wasted way too much disk to record revision mappings
+   between svn and git; a new representation that is much more compact
+   for this information has been introduced to correct this.
 
- * "git checkout" from and to detached HEAD leaves a bit more
-   information in the reflog.
+ * "git svn" left temporary index files it used without cleaning them
+   up; this was corrected.
+
+ * "git status" from a subdirectory now shows relative paths, which
+   makes copy-and-pasting for git-checkout/git-add/git-rm easier.  The
+   traditional behaviour to show the full path relative to the top of
+   the work tree can be had by setting status.relativepaths
+   configuration variable to false.
+
+ * "git blame" kept text for each annotated revision in core needlessly;
+   this has been corrected.
+
+ * "git shortlog" learned to default to HEAD when the standard input is
+   a terminal and the user did not give any revision parameter.
+
+ * "git shortlog" learned "-e" option to show e-mail addresses as well as
+   authors' names.
+
+ * "git help" learned "-w" option to show documentation in browsers.
 
  * In addition there are quite a few internal clean-ups. Notably
 
@@ -246,11 +316,17 @@ this release, unless otherwise noted.
 These fixes are only in v1.5.4 and not backported to v1.5.3 maintenance
 series.
 
+ * The way "git diff --check" behaves is much more consistent with the way
+   "git apply --whitespace=warn" works.
+
  * "git svn" talking with the SVN over http will correctly quote branch
    and project names.
 
+ * "git config" did not work correctly on platforms that define
+   REG_NOMATCH to an even number.
+
 --
 exec >/var/tmp/1
-O=v1.5.3.7-1003-gf38ca7c
+O=v1.5.4-rc0-85-gdbedf97
 echo O=`git describe refs/heads/master`
 git shortlog --no-merges $O..refs/heads/master ^refs/heads/maint