Home Explore Blog CI



git

2nd chunk of `Documentation/RelNotes/1.8.2.adoc`
705e7819fc01b170002645f2a7ca09505283cddd827c7c6c0000000100000fa4
 All-caps "GIT" was merely a way to imitate "Git" typeset in small
   caps in our ASCII text only documentation and to be avoided.

 * The completion script (in contrib/completion) used to let the
   default completer to suggest pathnames, which gave too many
   irrelevant choices (e.g. "git add" would not want to add an
   unmodified path).  It learnt to use a more git-aware logic to
   enumerate only relevant ones.

 * In bare repositories, "git shortlog" and other commands now read
   mailmap files from the tip of the history, to help running these
   tools in server settings.

 * Color specifiers, e.g. "%C(blue)Hello%C(reset)", used in the
   "--format=" option of "git log" and friends can be disabled when
   the output is not sent to a terminal by prefixing them with
   "auto,", e.g. "%C(auto,blue)Hello%C(auto,reset)".

 * Scripts can ask Git that wildcard patterns in pathspecs they give do
   not have any significance, i.e. take them as literal strings.

 * The patterns in .gitignore and .gitattributes files can have **/,
   as a pattern that matches 0 or more levels of subdirectory.
   E.g. "foo/**/bar" matches "bar" in "foo" itself or in a
   subdirectory of "foo".

 * When giving arguments without "--" disambiguation, object names
   that come earlier on the command line must not be interpretable as
   pathspecs and pathspecs that come later on the command line must
   not be interpretable as object names.  This disambiguation rule has
   been tweaked so that ":/" (no other string before or after) is
   always interpreted as a pathspec; "git cmd -- :/" is no longer
   needed, you can just say "git cmd :/".

 * Various "hint" lines Git gives when it asks the user to edit
   messages in the editor are commented out with '#' by default. The
   core.commentchar configuration variable can be used to customize
   this '#' to a different character.

 * "git add -u" and "git add -A" without pathspec issues warning to
   make users aware that they are only operating on paths inside the
   subdirectory they are in.  Use ":/" (everything from the top) or
   "." (everything from the $cwd) to disambiguate.

 * "git blame" (and "git diff") learned the "--no-follow" option.

 * "git branch" now rejects some nonsense combinations of command line
   arguments (e.g. giving more than one branch name to rename) with
   more case-specific error messages.

 * "git check-ignore" command to help debugging .gitignore files has
   been added.

 * "git cherry-pick" can be used to replay a root commit to an unborn
   branch.

 * "git commit" can be told to use --cleanup=whitespace by setting the
   configuration variable commit.cleanup to 'whitespace'.

 * "git diff" and other Porcelain commands can be told to use a
   non-standard algorithm by setting diff.algorithm configuration
   variable.

 * "git fetch --mirror" and fetch that uses other forms of refspec
   with wildcard used to attempt to update a symbolic ref that match
   the wildcard on the receiving end, which made little sense (the
   real ref that is pointed at by the symbolic ref would be updated
   anyway).  Symbolic refs no longer are affected by such a fetch.

 * "git format-patch" now detects more cases in which a whole branch
   is being exported, and uses the description for the branch, when
   asked to write a cover letter for the series.

 * "git format-patch" learned "-v $count" option, and prepends a
   string "v$count-" to the names of its output files, and also
   automatically sets the subject prefix to "PATCH v$count". This
   allows patches from rerolled series to be stored under different
   names and makes it easier to reuse cover letter messages.

 * "git log" and friends can be told with --use-mailmap option to
   rewrite the names and email addresses of people using the mailmap
   mechanism.

 * "git log --cc --graph" now shows the combined diff output with the
   ancestry graph.

 * "git log --grep=<pattern>" honors i18n.logoutputencoding to look
   for the pattern

Title: Git Version 1.8.2 Updates and Enhancements
Summary
This release of Git includes various updates and enhancements, such as improved completion scripts, colored output, and new features for commands like 'git shortlog', 'git log', and 'git format-patch'. Additionally, there are changes to the handling of pathspecs, .gitignore files, and mailmap files, as well as new options for commands like 'git blame', 'git branch', and 'git commit'.