Path to this page:
Subject: CVS commit: pkgsrc
From: Adam Ciarcinski
Date: 2015-07-31 14:57:23
Message id: 20150731125723.71E6798@cvs.netbsd.org
Log Message:
Changes 2.5.0:
UI, Workflows & Features
* The bash completion script (in contrib/) learned a few options that
"git revert" takes.
* Whitespace breakages in deleted and context lines can also be
painted in the output of "git diff" and friends with the new
--ws-error-highlight option.
* List of commands shown by "git help" are grouped along the workflow
elements to help early learners.
* "git p4" now detects the filetype (e.g. binary) correctly even when
the files are opened exclusively.
* git p4 attempts to better handle branches in Perforce.
* "git p4" learned "--changes-block-size <n>" to read \
the changes in
chunks from Perforce, instead of making one call to "p4 changes"
that may trigger "too many rows scanned" error from Perforce.
* More workaround for Perforce's row number limit in "git p4".
* Unlike "$EDITOR" and "$GIT_EDITOR" that can hold the path \
to the
command and initial options (e.g. "/path/to/emacs -nw"), 'git p4'
did not let the shell interpolate the contents of the environment
variable that name the editor "$P4EDITOR" (and "$EDITOR", \
too).
This release makes it in line with the rest of Git, as well as with
Perforce.
* A new short-hand <branch>@{push} denotes the remote-tracking branch
that tracks the branch at the remote the <branch> would be pushed
to.
* "git show-branch --topics HEAD" (with no other arguments) did not
do anything interesting. Instead, contrast the given revision
against all the local branches by default.
* A replacement for contrib/workdir/git-new-workdir that does not
rely on symbolic links and make sharing of objects and refs safer
by making the borrowee and borrowers aware of each other.
Consider this as still an experimental feature; its UI is still
likely to change.
* Tweak the sample "store" backend of the credential helper to honor
XDG configuration file locations when specified.
* A heuristic we use to catch mistyped paths on the command line
"git <cmd> <revs> <pathspec>" is to make sure \
that all the non-rev
parameters in the later part of the command line are names of the
files in the working tree, but that means "git grep $str -- \*.c"
must always be disambiguated with "--", because nobody sane will
create a file whose name literally is asterisk-dot-see. Loosen the
heuristic to declare that with a wildcard string the user likely
meant to give us a pathspec.
* "git merge FETCH_HEAD" learned that the previous "git \
fetch" could
be to create an Octopus merge, i.e. recording multiple branches
that are not marked as "not-for-merge"; this allows us to lose an
old style invocation "git merge <msg> HEAD $commits..." in the
implementation of "git pull" script; the old style syntax can now
be deprecated (but not removed yet).
* Filter scripts were run with SIGPIPE disabled on the Git side,
expecting that they may not read what Git feeds them to filter.
We however treated a filter that does not read its input fully
before exiting as an error. We no longer do and ignore EPIPE
when writing to feed the filter scripts.
This changes semantics, but arguably in a good way. If a filter
can produce its output without fully consuming its input using
whatever magic, we now let it do so, instead of diagnosing it
as a programming error.
* Instead of dying immediately upon failing to obtain a lock, the
locking (of refs etc) retries after a short while with backoff.
* Introduce http.<url>.SSLCipherList configuration variable to tweak
the list of cipher suite to be used with libcURL when talking with
https:// sites.
* "git subtree" script (in contrib/) used "echo -n" to produce
progress messages in a non-portable way.
* "git subtree" script (in contrib/) does not have --squash option
when pushing, but the documentation and help text pretended as if
it did.
* The Git subcommand completion (in contrib/) no longer lists credential
helpers among candidates; they are not something the end user would
invoke interactively.
* The index file can be taught with "update-index --untracked-cache"
to optionally remember already seen untracked files, in order to
speed up "git status" in a working tree with tons of cruft.
* "git mergetool" learned to drive WinMerge as a backend.
* "git upload-pack" that serves "git fetch" can be told to serve
commits that are not at the tip of any ref, as long as they are
reachable from a ref, with uploadpack.allowReachableSHA1InWant
configuration variable.
Files: