<feed xmlns='http://www.w3.org/2005/Atom'>
<title>git/perl, branch v2.1.2</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/git/git.git/
</subtitle>
<id>https://git.shady.money/git/atom?h=v2.1.2</id>
<link rel='self' href='https://git.shady.money/git/atom?h=v2.1.2'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/'/>
<updated>2014-06-06T18:02:59Z</updated>
<entry>
<title>Merge branch 'mm/pager-less-sans-S'</title>
<updated>2014-06-06T18:02:59Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2014-06-06T18:02:59Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=561d952ed412889da454d852f027fd985d532c44'/>
<id>urn:sha1:561d952ed412889da454d852f027fd985d532c44</id>
<content type='text'>
Since the very beginning of Git, we gave the LESS environment a
default value "FRSX" when we spawn "less" as the pager.  "S" (chop
long lines instead of wrapping) has been removed from this default
set of options, because it is more or less a personal taste thing,
as opposed to others that have good justifications (i.e. "R" is very
much justified because many kinds of output we produce are colored
and "FX" is justified because output we produce is often shorter
than a page).

Existing users who prefer not to see line-wrapped output may want to
set

  $ git config core.pager "less -S"

to restore the traditional behaviour.  It is expected that people
find output from the most subcommands easier to read with the new
default, except for "blame" which tends to produce really long
lines.  To override the new default only for "git blame", you can do
this:

  $ git config pager.blame "less -S"

* mm/pager-less-sans-S:
  pager: remove 'S' from $LESS by default
</content>
</entry>
<entry>
<title>pager: remove 'S' from $LESS by default</title>
<updated>2014-05-07T20:41:04Z</updated>
<author>
<name>Matthieu Moy</name>
<email>Matthieu.Moy@imag.fr</email>
</author>
<published>2014-04-30T07:35:25Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=b3275838d969b7ecb91aae584226fccbeb046aca'/>
<id>urn:sha1:b3275838d969b7ecb91aae584226fccbeb046aca</id>
<content type='text'>
By default, Git used to set $LESS to -FRSX if $LESS was not set by
the user. The FRX flags actually make sense for Git (F and X because
sometimes the output Git pipes to less is short, and R because Git
pipes colored output). The S flag (chop long lines), on the other
hand, is not related to Git and is a matter of user preference. Git
should not decide for the user to change LESS's default.

More specifically, the S flag harms users who review untrusted code
within a pager, since a patch looking like:

    -old code;
    +new good code; [... lots of tabs ...] malicious code;

would appear identical to:

    -old code;
    +new good code;

Users who prefer the old behavior can still set the $LESS environment
variable to -FRSX explicitly, or set core.pager to 'less -S'.

The documentation in config.txt is made a bit longer to keep both an
example setting the 'S' flag (needed to recover the old behavior)
and an example showing how to unset a flag set by Git.

Signed-off-by: Matthieu Moy &lt;Matthieu.Moy@imag.fr&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>SVN.pm::parse_svn_date: allow timestamps with a single-digit hour</title>
<updated>2014-04-17T18:01:26Z</updated>
<author>
<name>RomanBelinsky</name>
<email>belinsky.roman@gmail.com</email>
</author>
<published>2014-02-11T16:23:02Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=784f4b6f33afb439a3d95e5751731a88df545889'/>
<id>urn:sha1:784f4b6f33afb439a3d95e5751731a88df545889</id>
<content type='text'>
Some broken subversion server gives timestamps with only one digit
in the hour part, like this:

    2014-01-07T5:01:02.048176Z

Loosen the regexp that expected to see two-digit hour, minute and
second parts to accept a single-digit hour (but not minute or
second).

Signed-off-by: Stepan Kasal &lt;kasal@ucw.cz&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>code and test: fix misuses of "nor"</title>
<updated>2014-03-31T22:29:33Z</updated>
<author>
<name>Justin Lebar</name>
<email>jlebar@google.com</email>
</author>
<published>2014-03-31T22:11:47Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=235e8d591480d7e1378c27fe65c5529625d4b5be'/>
<id>urn:sha1:235e8d591480d7e1378c27fe65c5529625d4b5be</id>
<content type='text'>
Signed-off-by: Justin Lebar &lt;jlebar@google.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>comments: fix misuses of "nor"</title>
<updated>2014-03-31T22:29:27Z</updated>
<author>
<name>Justin Lebar</name>
<email>jlebar@google.com</email>
</author>
<published>2014-03-31T22:11:46Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=01689909eb9f8366583c44b325d8d9ba259a2538'/>
<id>urn:sha1:01689909eb9f8366583c44b325d8d9ba259a2538</id>
<content type='text'>
Signed-off-by: Justin Lebar &lt;jlebar@google.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>git-svn: memoize _rev_list and rebuild</title>
<updated>2014-01-23T02:54:26Z</updated>
<author>
<name>lin zuojian</name>
<email>manjian2006@gmail.com</email>
</author>
<published>2014-01-23T02:15:19Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=ab0bcec9873f1fcef6c4b8825cc9e762c636ca9e'/>
<id>urn:sha1:ab0bcec9873f1fcef6c4b8825cc9e762c636ca9e</id>
<content type='text'>
According to profile data, _rev_list and rebuild consume a large
portion of time.  Memoize the results of _rev_list and memoize
rebuild internals to avoid subprocess invocation.

When importing 15152 revisions on a LAN, time improved from 10
hours to 3-4 hours.

Signed-off-by: lin zuojian &lt;manjian2006@gmail.com&gt;
Signed-off-by: Eric Wong &lt;normalperson@yhbt.net&gt;
</content>
</entry>
<entry>
<title>Merge branch 'jn/pager-lv-default-env'</title>
<updated>2014-01-13T19:33:35Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2014-01-13T19:33:34Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=9fac0777e16b6e342f7c84fb7059d6fca52505d2'/>
<id>urn:sha1:9fac0777e16b6e342f7c84fb7059d6fca52505d2</id>
<content type='text'>
Just like we give a reasonable default for "less" via the LESS
environment variable, specify a reasonable default for "lv" via the
"LV" environment variable when spawning the pager.

* jn/pager-lv-default-env:
  pager: set LV=-c alongside LESS=FRSX
</content>
</entry>
<entry>
<title>pager: set LV=-c alongside LESS=FRSX</title>
<updated>2014-01-07T17:23:41Z</updated>
<author>
<name>Jonathan Nieder</name>
<email>jrnieder@gmail.com</email>
</author>
<published>2014-01-07T02:14:05Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=e54c1f2d2533c5406abeb8e3e0cf78c68ca9c21e'/>
<id>urn:sha1:e54c1f2d2533c5406abeb8e3e0cf78c68ca9c21e</id>
<content type='text'>
On systems with lv configured as the preferred pager (i.e.,
DEFAULT_PAGER=lv at build time, or PAGER=lv exported in the
environment) git commands that use color show control codes instead of
color in the pager:

	$ git diff
	^[[1mdiff --git a/.mailfilter b/.mailfilter^[[m
	^[[1mindex aa4f0b2..17e113e 100644^[[m
	^[[1m--- a/.mailfilter^[[m
	^[[1m+++ b/.mailfilter^[[m
	^[[36m@@ -1,11 +1,58 @@^[[m

"less" avoids this problem because git uses the LESS environment
variable to pass the -R option ('output ANSI color escapes in raw
form') by default.  Use the LV environment variable to pass 'lv' the
-c option ('allow ANSI escape sequences for text decoration / color')
to fix it for lv, too.

Noticed when the default value for color.ui flipped to 'auto' in
v1.8.4-rc0~36^2~1 (2013-06-10).

Reported-by: Olaf Meeuwissen &lt;olaf.meeuwissen@avasys.jp&gt;
Signed-off-by: Jonathan Nieder &lt;jrnieder@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>git-svn: workaround for a bug in svn serf backend</title>
<updated>2013-12-27T20:22:19Z</updated>
<author>
<name>Roman Kagan</name>
<email>rkagan@mail.ru</email>
</author>
<published>2013-12-27T08:05:15Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=2394e94e831991348688831a384b088a424c7ace'/>
<id>urn:sha1:2394e94e831991348688831a384b088a424c7ace</id>
<content type='text'>
Subversion serf backend in versions 1.8.5 and below has a bug(*) that the
function creating the descriptor of a file change -- add_file() --
doesn't make a copy of its third argument when storing it on the
returned descriptor.  As a result, by the time this field is used (in
transactions of file copying or renaming) it may well be released, and
the memory reused.

One of its possible manifestations is the svn assertion triggering on an
invalid path, with a message

svn_fspath__skip_ancestor: Assertion
`svn_fspath__is_canonical(child_fspath)' failed.

This patch works around this bug, by storing the value to be passed as
the third argument to add_file() in a local variable with the same scope
as the file change descriptor, making sure their lifetime is the same.

* [ew: fixed in Subversion r1553376 as noted by Jonathan Nieder]

Cc: Benjamin Pabst &lt;benjamin.pabst85@gmail.com&gt;
Signed-off-by: Eric Wong &lt;normalperson@yhbt.net&gt;
Reviewed-by: Jonathan Nieder &lt;jrnieder@gmail.com&gt;
Signed-off-by: Roman Kagan &lt;rkagan@mail.ru&gt;
</content>
</entry>
<entry>
<title>git-svn: fix termination issues for remote svn connections</title>
<updated>2013-09-06T16:44:28Z</updated>
<author>
<name>Uli Heller</name>
<email>uli.heller@daemons-point.com</email>
</author>
<published>2013-09-03T07:35:29Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=73ffac3b38e1a62b922a0eb462f41fced6a18ebf'/>
<id>urn:sha1:73ffac3b38e1a62b922a0eb462f41fced6a18ebf</id>
<content type='text'>
git-svn used in combination with serf to talk to svn repository
served over HTTPS dumps core on termination.

This is caused by a bug in serf, and the most recent serf release
1.3.1 still exhibits the problem; a fix for the bug exists (see
https://code.google.com/p/serf/source/detail?r=2146).

Until the bug is fixed, work around the issue within the git perl
module Ra.pm by freeing the private copy of the remote access object
on termination, which seems to be sufficient to prevent the error
from happening.

Note: Since subversion-1.8.0 and later do require serf-1.2.1 or
later, this issue typically shows up when upgrading to a recent
version of subversion.

Credits go to Jonathan Lambrechts for proposing a fix to Ra.pm,
Evgeny Kotkov and Ivan Zhakov for fixing the issue in serf and
pointing me to that fix.

Signed-off-by: Uli Heller &lt;uli.heller@daemons-point.com&gt;
Tested-by: Kyle J. McKay &lt;mackyle@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
</feed>
