pkgsrc/devel/git-gitk
adam eebf756366 Git 2.12 Release Notes
======================

Backward compatibility notes.

 * Use of an empty string that is used for 'everything matches' is
   still warned and Git asks users to use a more explicit '.' for that
   instead.  The hope is that existing users will not mind this
   change, and eventually the warning can be turned into a hard error,
   upgrading the deprecation into removal of this (mis)feature.  That
   is not scheduled to happen in the upcoming release (yet).

 * The historical argument order "git merge <msg> HEAD <commit>..."
   has been deprecated for quite some time, and will be removed in a
   future release.

 * An ancient script "git relink" has been removed.


Updates since v2.11
-------------------

UI, Workflows & Features

 * Various updates to "git p4".

 * "git p4" didn't interact with the internal of .git directory
   correctly in the modern "git-worktree"-enabled world.

 * "git branch --list" and friends learned "--ignore-case" option to
   optionally sort branches and tags case insensitively.

 * In addition to %(subject), %(body), "log --pretty=format:..."
   learned a new placeholder %(trailers).

 * "git rebase" learned "--quit" option, which allows a user to
   remove the metadata left by an earlier "git rebase" that was
   manually aborted without using "git rebase --abort".

 * "git clone --reference $there --recurse-submodules $super" has been
   taught to guess repositories usable as references for submodules of
   $super that are embedded in $there while making a clone of the
   superproject borrow objects from $there; extend the mechanism to
   also allow submodules of these submodules to borrow repositories
   embedded in these clones of the submodules embedded in the clone of
   the superproject.

 * Porcelain scripts written in Perl are getting internationalized.

 * "git merge --continue" has been added as a synonym to "git commit"
   to conclude a merge that has stopped due to conflicts.

 * Finer-grained control of what protocols are allowed for transports
   during clone/fetch/push have been enabled via a new configuration
   mechanism.

 * "git shortlog" learned "--committer" option to group commits by
   committer, instead of author.

 * GitLFS integration with "git p4" has been updated.

 * The isatty() emulation for Windows has been updated to eradicate
   the previous hack that depended on internals of (older) MSVC
   runtime.

 * Some platforms no longer understand "latin-1" that is still seen in
   the wild in e-mail headers; replace them with "iso-8859-1" that is
   more widely known when conversion fails from/to it.

 * "git grep" has been taught to optionally recurse into submodules.

 * "git rm" used to refuse to remove a submodule when it has its own
   git repository embedded in its working tree.  It learned to move
   the repository away to $GIT_DIR/modules/ of the superproject
   instead, and allow the submodule to be deleted (as long as there
   will be no loss of local modifications, that is).

 * A recent updates to "git p4" was not usable for older p4 but it
   could be made to work with minimum changes.  Do so.

 * "git diff" learned diff.interHunkContext configuration variable
   that gives the default value for its --inter-hunk-context option.

 * The prereleaseSuffix feature of version comparison that is used in
   "git tag -l" did not correctly when two or more prereleases for the
   same release were present (e.g. when 2.0, 2.0-beta1, and 2.0-beta2
   are there and the code needs to compare 2.0-beta1 and 2.0-beta2).

 * "git submodule push" learned "--recurse-submodules=only option to
   push submodules out without pushing the top-level superproject.

 * "git tag" and "git verify-tag" learned to put GPG verification
   status in their "--format=<placeholders>" output format.

 * An ancient repository conversion tool left in contrib/ has been
   removed.

 * "git show-ref HEAD" used with "--verify" because the user is not
   interested in seeing refs/remotes/origin/HEAD, and used with
   "--head" because the user does not want HEAD to be filtered out,
   i.e. "git show-ref --head --verify HEAD", did not work as expected.

 * "git submodule add" used to be confused and refused to add a
   locally created repository; users can now use "--force" option
   to add them.
   (merge 619acfc78c sb/submodule-add-force later to maint).

 * Some people feel the default set of colors used by "git log --graph"
   rather limiting.  A mechanism to customize the set of colors has
   been introduced.

 * "git read-tree" and its underlying unpack_trees() machinery learned
   to report problematic paths prefixed with the --super-prefix option.

 * When a submodule "A", which has another submodule "B" nested within
   it, is "absorbed" into the top-level superproject, the inner
   submodule "B" used to be left in a strange state.  The logic to
   adjust the .git pointers in these submodules has been corrected.

 * The user can specify a custom update method that is run when
   "submodule update" updates an already checked out submodule.  This
   was ignored when checking the submodule out for the first time and
   we instead always just checked out the commit that is bound to the
   path in the superproject's index.

 * The command line completion (in contrib/) learned that
   "git diff --submodule=" can take "diff" as a recently added option.

 * The "core.logAllRefUpdates" that used to be boolean has been
   enhanced to take 'always' as well, to record ref updates to refs
   other than the ones that are expected to be updated (i.e. branches,
   remote-tracking branches and notes).

 * Comes with more command line completion (in contrib/) for recently
   introduced options.
2017-02-25 08:32:57 +00:00
..
DESCR
Makefile
PLIST Git 2.12 Release Notes 2017-02-25 08:32:57 +00:00