gitweb.git
difftool: silence warningRoss Lagerwall Tue, 21 Aug 2012 10:21:40 +0000 (12:21 +0200)

difftool: silence warning

Silence a warning given when running git difftool --dir-diff and
there are no changes.

This is because command_oneline returns undef when the command has no
output, not ''.

Signed-off-by: Ross Lagerwall <rosslagerwall@gmail.com>
Acked-by: David Aguilar <davvid@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Add Code Compare v2.80.4 as a merge / diff tool for... Sebastian Schuberth Fri, 10 Aug 2012 08:21:06 +0000 (10:21 +0200)

Add Code Compare v2.80.4 as a merge / diff tool for Windows

Code Compare is a commercial file comparison tool for Windows, see

http://www.devart.com/codecompare/

Version 2.80.4 added support for command line arguments preceded by a
dash instead of a slash. This is required for Git for Windows because
slashes in command line arguments get mangled with according to these
rules:

http://www.mingw.org/wiki/Posix_path_conversion

Signed-off-by: Sebastian Schuberth <sschuberth@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

mergetool,difftool: Document --tool-help consistentlyDavid Aguilar Fri, 10 Aug 2012 07:39:22 +0000 (00:39 -0700)

mergetool,difftool: Document --tool-help consistently

Add an entry for --tool-help to the mergetool documentation.

Move --tool-help in the difftool documentation so that it is
listed immediately after --tool so that it is easier to find.

Signed-off-by: David Aguilar <davvid@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

difftool: Disable --symlinks on cygwinDavid Aguilar Wed, 25 Jul 2012 03:14:24 +0000 (20:14 -0700)

difftool: Disable --symlinks on cygwin

Symlinks are not ubiquitous on Windows so make --no-symlinks the default.

Signed-off-by: David Aguilar <davvid@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

difftool: Handle compare() returning -1David Aguilar Thu, 26 Jul 2012 19:36:19 +0000 (12:36 -0700)

difftool: Handle compare() returning -1

Keep the temporary directory around when compare()
cannot read its input files, which is indicated by -1.

Defer tempdir creation to allow an early exit in setup_dir_diff().
Wrap the rest of the entry points in an exit_cleanup() function
to handle removing temporary files and error reporting.

Print the temporary files' location so that the user can
recover them.

Signed-off-by: David Aguilar <davvid@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

difftool: Wrap long lines for readabilityDavid Aguilar Thu, 26 Jul 2012 06:07:57 +0000 (23:07 -0700)

difftool: Wrap long lines for readability

Keep everything within 80 columns. Wrap the user-facing messages too.

Signed-off-by: David Aguilar <davvid@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

difftool: Check all return codes from compare()David Aguilar Wed, 25 Jul 2012 03:14:23 +0000 (20:14 -0700)

difftool: Check all return codes from compare()

Handle the case where compare() is unable to read its inputs.
Emit a warning so that the user knows that something went wrong.

We may later want to restructure the code so that we can inhibit
tempdir cleanup when this condition is reached.

Signed-off-by: David Aguilar <davvid@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

difftool: Handle finding mergetools/ in a path with... David Aguilar Wed, 25 Jul 2012 03:14:22 +0000 (20:14 -0700)

difftool: Handle finding mergetools/ in a path with spaces

Use the original File::Find implementation from bf73fc2 (difftool:
print list of valid tools with '--tool-help', 2012-03-29) so that we
properly handle mergetools/ being located in a path containing
spaces.

One small difference is that we avoid using a global variable by
passing a reference to the list of tools.

Signed-off-by: David Aguilar <davvid@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

difftool: Use symlinks when diffing against the worktreeDavid Aguilar Mon, 23 Jul 2012 06:05:30 +0000 (23:05 -0700)

difftool: Use symlinks when diffing against the worktree

Teach difftool's --dir-diff mode to use symlinks to represent
files from the working copy, and make it the default behavior
for the non-Windows platforms.

Using symlinks is simpler and safer since we do not need to
worry about copying files back into the worktree.
The old behavior is still available as --no-symlinks.

Signed-off-by: David Aguilar <davvid@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

difftool: Call the temp directory "git-difftool"David Aguilar Mon, 23 Jul 2012 03:57:10 +0000 (20:57 -0700)

difftool: Call the temp directory "git-difftool"

The "diffall" name was left over from when this functionality was part of
the "git-diffall" script in contrib/. Make the naming consistent.

Signed-off-by: David Aguilar <davvid@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

difftool: Move option values into a hashDavid Aguilar Mon, 23 Jul 2012 03:57:09 +0000 (20:57 -0700)

difftool: Move option values into a hash

Shorten the "my" declaration for all of the option-specific variables
by wrapping all of them in a hash. This also gives us a place to
specify default values, should we need them.

Signed-off-by: David Aguilar <davvid@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

difftool: Eliminate global variablesDavid Aguilar Mon, 23 Jul 2012 03:57:08 +0000 (20:57 -0700)

difftool: Eliminate global variables

Organize the script so that it has a single main() function which
calls out to dir_diff() and file_diff() functions. This eliminates
"dir-diff"-specific variables that do not need to be calculated when
performing a regular file-diff.

Signed-off-by: David Aguilar <davvid@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

difftool: Simplify print_tool_help()David Aguilar Mon, 23 Jul 2012 03:57:07 +0000 (20:57 -0700)

difftool: Simplify print_tool_help()

Eliminate a global variable and File::Find usage by building upon
basename() and glob() instead.

Signed-off-by: David Aguilar <davvid@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

difftool: only copy back files modified during director... Tim Henigan Thu, 19 Jul 2012 08:27:09 +0000 (01:27 -0700)

difftool: only copy back files modified during directory diff

When 'difftool --dir-diff' is used to compare working tree files,
it always copies files from the tmp dir back to the working tree
when the diff tool is closed, even if the files were not modified
by the diff tool.

This causes the file timestamp to change. Files should only be
copied from the tmp dir back to the working copy if they were
actually modified.

Signed-off-by: Tim Henigan <tim.henigan@gmail.com>
Signed-off-by: David Aguilar <davvid@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Git 1.7.11 v1.7.11Junio C Hamano Sun, 17 Jun 2012 21:07:15 +0000 (14:07 -0700)

Git 1.7.11

Signed-off-by: Junio C Hamano <gitster@pobox.com>

Sync with 1.7.10.5Junio C Hamano Sun, 17 Jun 2012 21:05:53 +0000 (14:05 -0700)

Sync with 1.7.10.5

Git 1.7.10.5 v1.7.10.5Junio C Hamano Sun, 17 Jun 2012 21:04:15 +0000 (14:04 -0700)

Git 1.7.10.5

Signed-off-by: Junio C Hamano <gitster@pobox.com>

Do not autosquash in case of an implied interactive... Vincent van Ravesteijn Thu, 24 May 2012 13:57:26 +0000 (13:57 +0000)

Do not autosquash in case of an implied interactive rebase

The option to autosquash is only used in case of an interactive rebase.
When merges are preserved, rebase uses an interactive rebase internally,
but in this case autosquash should still be disabled.

Signed-off-by: Vincent van Ravesteijn <vfr@lyx.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Merge branch 'js/maint-fast-export-mark-error' into... Junio C Hamano Sun, 17 Jun 2012 21:00:03 +0000 (14:00 -0700)

Merge branch 'js/maint-fast-export-mark-error' into maint

"git fast-export" did not give a readable error message when the same
mark erroneously appeared twice in the --import-marks input.

Merge git://github.com/git-l10n/git-poJunio C Hamano Fri, 15 Jun 2012 22:01:16 +0000 (15:01 -0700)

Merge git://github.com/git-l10n/git-po

Updated Italian translations.

* git://github.com/git-l10n/git-po:
l10n: it.po: translate 212 new messages

Merge branch 'as/diff-shortstat-ignore-binary'Junio C Hamano Fri, 15 Jun 2012 22:00:53 +0000 (15:00 -0700)

Merge branch 'as/diff-shortstat-ignore-binary'

# By Alexander Strasser
* as/diff-shortstat-ignore-binary:
diff: Only count lines in show_shortstats

diff: Only count lines in show_shortstatsAlexander Strasser Fri, 15 Jun 2012 21:50:30 +0000 (23:50 +0200)

diff: Only count lines in show_shortstats

Do not mix byte and line counts. Binary files have byte counts;
skip them when accumulating line insertions/deletions.

The regression was introduced in e18872b.

Signed-off-by: Alexander Strasser <eclipse7@gmx.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

perl/Makefile: install Git::SVN::* when NO_PERL_MAKEMAK... Jonathan Nieder Fri, 15 Jun 2012 18:05:05 +0000 (13:05 -0500)

perl/Makefile: install Git::SVN::* when NO_PERL_MAKEMAKER=yes, too

v1.7.11-rc1~12^2~2 (2012-05-27) and friends split some git-svn code
into separate modules but did not update the fallback rules to install
them when NO_PERL_MAKEMAKER is set. Add the appropriate rules so
users without MakeMaker can use git-svn again.

Affected modules: Git::SVN::Prompt, Git::SVN::Fetcher,
Git::SVN::Editor, Git::SVN::Ra, Git::SVN::Memoize::YAML.

Reported-by: Adam Roben <adam@roben.org>
Signed-off-by: Jonathan Nieder <jrnieder@gmali.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

perl/Makefile.PL: warn about duplicate module list... Jonathan Nieder Fri, 15 Jun 2012 18:14:46 +0000 (13:14 -0500)

perl/Makefile.PL: warn about duplicate module list in perl/Makefile

Adding or removing a module requires modifying both files to support
builds with and without MakeMaker. Add a comment to remind patch
authors and reviewers at the crucial moment.

Longer term, it would be nicer to maintain a single list, perhaps in a
separate file used by both build systems.

Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

l10n: it.po: translate 212 new messagesMarco Paolone Thu, 14 Jun 2012 12:14:31 +0000 (14:14 +0200)

l10n: it.po: translate 212 new messages

Signed-off-by: Marco Paolone <marcopaolone@gmail.com>
Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>

Merge branch 'rj/gitweb-test-sans-date-parser'Junio C Hamano Wed, 13 Jun 2012 18:48:54 +0000 (11:48 -0700)

Merge branch 'rj/gitweb-test-sans-date-parser'

Regression fix to t9501 introduced at 0f3ddd4

* rj/gitweb-test-sans-date-parser:
gitweb: Skip 'modification times' tests when no date parser available

Merge branch 'fc/git-complete-helper-fix'Junio C Hamano Wed, 13 Jun 2012 18:47:11 +0000 (11:47 -0700)

Merge branch 'fc/git-complete-helper-fix'

* fc/git-complete-helper-fix:
completion: put main git and gitk completion functions back into git namespace

completion: remove credential helpers from porcelain... SZEDER Gábor Wed, 13 Jun 2012 08:11:29 +0000 (10:11 +0200)

completion: remove credential helpers from porcelain commands

Signed-off-by: SZEDER Gábor <szeder@ira.uka.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

completion: put main git and gitk completion functions... SZEDER Gábor Wed, 13 Jun 2012 08:08:50 +0000 (10:08 +0200)

completion: put main git and gitk completion functions back into git namespace

Commit 7f02f3d7 (completion: rename internal helpers _git and _gitk,
2012-05-19) renamed said functions to _main_git() and _main_gitk(),
respectively. By convention the name of our git-completion-specific
functions start with '_git' or '__git' prefix, so rename those
functions once again to put them back into our "namespace". Use the
two underscore prefix, because _git_main() could be mistaken for the
completion function of the (not yet existing) 'git main' command.

Signed-off-by: SZEDER Gábor <szeder@ira.uka.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

gitweb: Skip 'modification times' tests when no date... Ramsay Jones Tue, 12 Jun 2012 18:09:38 +0000 (19:09 +0100)

gitweb: Skip 'modification times' tests when no date parser available

The If-Modified-Since support in Gitweb is conditional on the
availability of a date parser from either the HTTP::Date or
Time::ParseDate modules. If a suitable parser is not available,
then the corresponding 'modification times' tests should be skipped.

Introduce the DATE_PARSER test prerequisite and use it to skip
all of the dependent tests.

Signed-off-by: Ramsay Jones <ramsay@ramsay1.demon.co.uk>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Git 1.7.11-rc3 v1.7.11-rc3Junio C Hamano Tue, 12 Jun 2012 16:10:52 +0000 (09:10 -0700)

Git 1.7.11-rc3

Signed-off-by: Junio C Hamano <gitster@pobox.com>

Merge git://github.com/git-l10n/git-poJunio C Hamano Tue, 12 Jun 2012 16:08:35 +0000 (09:08 -0700)

Merge git://github.com/git-l10n/git-po

Updates to German, Vietnamese and simplified Chinese translation.

* git://github.com/git-l10n/git-po:
l10n: de.po: translate 27 new messages
l10n: Update po/vi.po to v1.7.11.rc2.2.gb694fbb
l10n: zh_CN.po: translate 27 new messages
l10n: Update git.pot (27 new, 1 removed messages)

Merge git://github.com/ralfth/git-po-deJiang Xin Tue, 12 Jun 2012 15:41:05 +0000 (23:41 +0800)

Merge git://github.com/ralfth/git-po-de

By Ralf Thielow
via Ralf Thielow
* github.com/ralfth/git-po-de:
l10n: de.po: translate 27 new messages

Merge branch 'mm/api-credentials-doc'Junio C Hamano Tue, 12 Jun 2012 15:40:16 +0000 (08:40 -0700)

Merge branch 'mm/api-credentials-doc'

* mm/api-credentials-doc:
api-credential.txt: document that helpers field is filled-in automatically

Merge branch 'jc/fmt-merge-msg-people'Junio C Hamano Tue, 12 Jun 2012 15:33:30 +0000 (08:33 -0700)

Merge branch 'jc/fmt-merge-msg-people'

Tone down the lines that credit people involved and make them
comments, so that integrators who edit their merge messages can
still make use of the information, but lazy ones will not leave
the unverified guesses placed on the "via" line.

* jc/fmt-merge-msg-people:
fmt-merge-msg: make attribution into comment lines

api-credential.txt: document that helpers field is... Matthieu Moy Mon, 11 Jun 2012 17:51:47 +0000 (19:51 +0200)

api-credential.txt: document that helpers field is filled-in automatically

It was unclear whether the field was to be specified by the user of the
API.

Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Merge branch 'js/maint-fast-export-mark-error'Junio C Hamano Tue, 12 Jun 2012 14:27:50 +0000 (07:27 -0700)

Merge branch 'js/maint-fast-export-mark-error'

* js/maint-fast-export-mark-error:
fast-export: report SHA-1 instead of gibberish when marks exist already

fast-export: report SHA-1 instead of gibberish when... Johannes Schindelin Tue, 12 Jun 2012 13:45:16 +0000 (15:45 +0200)

fast-export: report SHA-1 instead of gibberish when marks exist already

Cc: Pieter de Bie <pdebie@ai.rug.nl>
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Max Horn <max@quendi.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

l10n: de.po: translate 27 new messagesRalf Thielow Fri, 8 Jun 2012 17:15:10 +0000 (19:15 +0200)

l10n: de.po: translate 27 new messages

Translate 27 new messages came from git.pot update
in 7256fd7 (l10n: Update git.pot (27 new, 1 removed messages)).

Signed-off-by: Ralf Thielow <ralf.thielow@googlemail.com>

git-svn: use YAML format for mergeinfo cache when possibleJonathan Nieder Sat, 9 Jun 2012 22:35:35 +0000 (17:35 -0500)

git-svn: use YAML format for mergeinfo cache when possible

Since v1.7.0-rc2~11 (git-svn: persistent memoization, 2010-01-30),
git-svn has maintained some private per-repository caches in
.git/svn/.caches to avoid refetching and recalculating some
mergeinfo-related information with every "git svn fetch".

These caches use the 'nstore' format from the perl core module
Storable, which can be read and written quickly and was designed for
transfer over the wire (the 'n' stands for 'network'). This format is
endianness-independent and independent of floating-point
representation.

Unfortunately the format is *not* independent of the perl version ---
new perl versions will write files that very old perl cannot read.
Worse, the format is not independent of the size of a perl integer.
So if you toggle perl's use64bitint compile-time option, then using
'git svn fetch' on your old repositories produces errors like this:

Byte order is not compatible at ../../lib/Storable.pm (autosplit
into ../../lib/auto/Storable/_retrieve.al) line 380, at
/usr/share/perl/5.12/Memoize/Storable.pm line 21

That is, upgrading perl to a version that uses use64bitint for the
first time makes git-svn suddenly refuse to fetch in existing
repositories. Removing .git/svn/.caches lets git-svn recover.

It's time to switch to a platform independent serializer backend with
better compatibility guarantees. This patch uses YAML::Any.

Other choices were considered:

- thawing data from Data::Dumper involves "eval". Doing that without
creating a security risk is fussy.

- the JSON API works on scalars in memory and doesn't provide a
standard way to serialize straight to disk.

YAML::Any is reasonably fast and has a pleasant API. In most
backends, LoadFile() reads the entire file into a scalar anyway and
converts it as a second step, but having an interface that allows the
deserialization to happen on the fly without a temporary is still a
comfort.

YAML::Any is not a core perl module, so we take care to use it when
and only when it is available. Installations without that module
should fall back to using Storable with all its quirks, keeping their
cache files in

.git/svn/.caches/*.db

Installations with YAML peacefully coexist by keeping a separate set
of cache files in

.git/svn/.caches/*.yaml.

In most cases, switching between is a one-time thing, so it doesn't
seem worth the complication to migrate existing caches.

The upshot: after this patch, as long as YAML::Any is installed you
can move your git repository between machines with different perl
installations and "git svn fetch" will work fine. If you do not have
YAML::Any, the behavior is unchanged (and in particular does not get
any worse).

Reported-by: Sandro Weiser <sandro.weiser@informatik.tu-chemnitz.de>
Reported-by: Bdale Garbee <bdale@gag.com>
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Eric Wong <normalperson@yhbt.net>

git-svn: make Git::SVN::RA a separate fileJonathan Nieder Sat, 9 Jun 2012 22:28:10 +0000 (17:28 -0500)

git-svn: make Git::SVN::RA a separate file

This slices off another 600 or so lines from the frighteningly long
git-svn.perl script.

The Git::SVN::Ra interface is similar enough to SVN::Ra that it is
probably safe to ignore most of its implementation on first reading.
(Documenting or moving functions that do not fit that pattern is left
as an exercise to the interested reader.)

[ew: rebased and fixed conflict against
commit c26ddce86d7215b4d9687bd4c6b5dd43a3fabf31
(git-svn: platform auth providers are working only on 1.6.15 or newer)]

Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Eric Wong <normalperson@yhbt.net>

git-svn: make Git::SVN::Editor a separate fileJonathan Nieder Sat, 9 Jun 2012 22:25:56 +0000 (17:25 -0500)

git-svn: make Git::SVN::Editor a separate file

This makes the git-svn script shorter and less scary for beginners to
read through for the first time. Take the opportunity to explain the
purpose and basic interface of the Git::SVN::Editor class while at it.

Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Eric Wong <normalperson@yhbt.net>

l10n: Update po/vi.po to v1.7.11.rc2.2.gb694fbbTran Ngoc Quan Sat, 9 Jun 2012 07:14:03 +0000 (14:14 +0700)

l10n: Updatepo/vi.po to v1.7.11.rc2.2.gb694fbb

* Translated 28 strings.

Signed-off-by: Tran Ngoc Quan <vnwildman@gmail.com>

Merge branch 'mm/api-credentials-doc'Junio C Hamano Fri, 8 Jun 2012 15:32:19 +0000 (08:32 -0700)

Merge branch 'mm/api-credentials-doc'

Finishing touches...

* mm/api-credentials-doc:
docs: fix cross-directory linkgit references

docs: fix cross-directory linkgit referencesJeff King Thu, 7 Jun 2012 21:03:23 +0000 (23:03 +0200)

docs: fix cross-directory linkgit references

Most of our documentation is in a single directory, so using
linkgit:git-config[1] just generates a relative link in the
same directory. However, this is not the case with the API
documentation in technical/*, which need to refer to
git-config from the parent directory.

We can fix this by passing a special prefix attribute when building
in a subdirectory, and respecting that prefix in our linkgit
definitions.

We only have to modify the html linkgit definition. For
manpages, we can ignore this for two reasons:

1. we do not generate actual links to the file in
manpages, but instead just give the name and section of
the linked manpage

2. we do not currently build manpages for subdirectories,
only html

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

l10n: zh_CN.po: translate 27 new messagesJiang Xin Fri, 8 Jun 2012 04:07:25 +0000 (12:07 +0800)

l10n: zh_CN.po: translate 27 new messages

Translate 19 new and 8 fuzzy messages which are marked by shell gettext
wrappers, and ignored by previous 'git.pot' updates.

Signed-off-by: Jiang Xin <worldhello.net@gmail.com>

l10n: Update git.pot (27 new, 1 removed messages)Jiang Xin Fri, 8 Jun 2012 02:40:20 +0000 (10:40 +0800)

l10n: Update git.pot (27 new, 1 removed messages)

Extract messages marked by shell gettext wrappers which are ignored
before. See:

* http://thread.gmane.org/gmane.comp.version-control.git/199112

Signed-off-by: Jiang Xin <worldhello.net@gmail.com>

Git 1.7.11-rc2 v1.7.11-rc2Junio C Hamano Thu, 7 Jun 2012 16:14:41 +0000 (09:14 -0700)

Git 1.7.11-rc2

Signed-off-by: Junio C Hamano <gitster@pobox.com>

Merge branch 'mm/api-credentials-doc'Junio C Hamano Thu, 7 Jun 2012 16:07:35 +0000 (09:07 -0700)

Merge branch 'mm/api-credentials-doc'

* mm/api-credentials-doc:
api-credentials.txt: add "see also" section
api-credentials.txt: mention credential.helper explicitly
api-credentials.txt: show the big picture first
doc: fix xref link from api docs to manual pages

Merge branch 'rr/maint-t3510-cascade-fix'Junio C Hamano Thu, 7 Jun 2012 16:07:27 +0000 (09:07 -0700)

Merge branch 'rr/maint-t3510-cascade-fix'

* rr/maint-t3510-cascade-fix:
t3510 (cherry-pick-sequence): add missing '&&'

Merge branch 'jc/svn-auth-providers-unusable-at-1.6.12'Junio C Hamano Thu, 7 Jun 2012 16:07:08 +0000 (09:07 -0700)

Merge branch 'jc/svn-auth-providers-unusable-at-1.6.12'

Regression fix for people with libsvn between 1.6.12 and 1.6.15, on
which we tried to use the non-working platform auth providers.

* jc/svn-auth-providers-unusable-at-1.6.12:
git-svn: platform auth providers are working only on 1.6.15 or newer

Merge branch 'cr/persistent-https'Junio C Hamano Thu, 7 Jun 2012 16:06:39 +0000 (09:06 -0700)

Merge branch 'cr/persistent-https'

A remote helper that acts as a proxy and caches ssl session for the
https:// transport is added to the contrib/ area.

By Colby Ranger
* cr/persistent-https:
Add persistent-https to contrib

fmt-merge-msg: make attribution into comment linesJunio C Hamano Wed, 6 Jun 2012 21:24:28 +0000 (14:24 -0700)

fmt-merge-msg: make attribution into comment lines

The submaintainer credit is not something you can compute purely by
looking at the history and its shape, especially in the presense of
fast-forward merges, and this observation makes the information on
the "via" line unreliable. Let's leave the final determination of
credits up to whoever is making the merge and show them as comments.

Signed-off-by: Junio C Hamano <gitster@pobox.com>

Merge git://github.com/git-l10n/git-poJunio C Hamano Tue, 5 Jun 2012 17:57:53 +0000 (10:57 -0700)

Merge git://github.com/git-l10n/git-po

German and Chinese translation updates.

By Ralf Thielow (4) and others
via Jiang Xin (1) and Tran Ngoc Quan (1)
* git://github.com/git-l10n/git-po:
l10n: Update translation for Vietnamese
l10n: de.po: add additional newline
l10n: de.po: translate 2 new, 3 fuzzy messages
l10n: de.po: translate 41 new messages
l10n: de.po: translate 265 new messages
l10n: zh_CN.po: translate 2 new, 3 fuzzy messages
l10n: Update git.pot (5 new, 3 removed messages)

t3510 (cherry-pick-sequence): add missing '&&'Ramkumar Ramachandra Mon, 4 Jun 2012 16:42:44 +0000 (22:12 +0530)

t3510 (cherry-pick-sequence): add missing '&&'

Breaks in a test assertion's && chain can potentially hide failures
from earlier commands in the chain. Fix an instance of this in the
setup.

Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

api-credentials.txt: add "see also" sectionMatthieu Moy Mon, 4 Jun 2012 20:17:44 +0000 (22:17 +0200)

api-credentials.txt: add "see also" section

Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

api-credentials.txt: mention credential.helper explicitlyMatthieu Moy Mon, 4 Jun 2012 20:17:43 +0000 (22:17 +0200)

api-credentials.txt: mention credential.helper explicitly

The name of the configuration variable was mentioned only at the very
end of the explanation, in a place specific to a specific rule, hence it
was not very clear what the specification was about.

Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

api-credentials.txt: show the big picture firstMatthieu Moy Mon, 4 Jun 2012 20:17:42 +0000 (22:17 +0200)

api-credentials.txt: show the big picture first

The API documentation targets two kinds of developers: those using the
C API, and those writing remote-helpers. The document was not clear
about which part was useful to which category, and for example, the C API
could be mistakenly thought as an API for writting remote helpers.

Based-on-patch-by: Jeff King <peff@peff.net>
Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

doc: fix xref link from api docs to manual pagesJunio C Hamano Mon, 4 Jun 2012 19:30:04 +0000 (12:30 -0700)

doc: fix xref link from api docs to manual pages

They are one-level above, so refer them as linkgit:../git-foo[n] with "../"

Signed-off-by: Junio C Hamano <gitster@pobox.com>

git-svn: platform auth providers are working only on... Junio C Hamano Mon, 4 Jun 2012 19:20:59 +0000 (12:20 -0700)

git-svn: platform auth providers are working only on 1.6.15 or newer

Matthijs Kooijman reports that the cut-off point 082afee (git-svn:
use platform specific auth providers, 2012-04-26) set at 1.6.12 to
use this feature safely was incorrect, and it is 1.6.15 instead:

http://svn.apache.org/repos/asf/subversion/trunk/CHANGES
Version 1.6.15
* improve some swig parameter mapping (r984565, r1035745)

Signed-off-by: Junio C Hamano <gitster@pobox.com>
Acked-by: Eric Wong <normalperson@yhbt.net>

Merge git://github.com/ralfth/git-po-deJiang Xin Mon, 4 Jun 2012 15:45:13 +0000 (23:45 +0800)

Merge git://github.com/ralfth/git-po-de

By Ralf Thielow
via Ralf Thielow
* ralfth/git-po-de/master:
l10n: de.po: add additional newline
l10n: de.po: translate 2 new, 3 fuzzy messages
l10n: de.po: translate 41 new messages
l10n: de.po: translate 265 new messages

l10n: Update translation for VietnameseTran Ngoc Quan Sat, 2 Jun 2012 00:37:40 +0000 (07:37 +0700)

l10n: Update translation for Vietnamese

* Updated 5 strings for v1.7.11-rc0-100-g5498c
* Retranslated about 16 strings

Signed-off-by: Tran Ngoc Quan <vnwildman@gmail.com>

Git 1.7.11-rc1 v1.7.11-rc1Junio C Hamano Sun, 3 Jun 2012 22:56:05 +0000 (15:56 -0700)

Git 1.7.11-rc1

Signed-off-by: Junio C Hamano <gitster@pobox.com>

Sync with 1.7.10.4Junio C Hamano Sun, 3 Jun 2012 22:54:33 +0000 (15:54 -0700)

Sync with 1.7.10.4

* maint:
Git 1.7.10.4

Git 1.7.10.4 v1.7.10.4Junio C Hamano Sun, 3 Jun 2012 22:53:58 +0000 (15:53 -0700)

Git 1.7.10.4

Signed-off-by: Junio C Hamano <gitster@pobox.com>

Merge branch 'ef/maint-rebase-error-message' into maintJunio C Hamano Sun, 3 Jun 2012 22:52:18 +0000 (15:52 -0700)

Merge branch 'ef/maint-rebase-error-message' into maint

When "git rebase" was given a bad commit to replay the history on,
its error message did not correctly give the command line argument
it had trouble parsing.

By Erik Faye-Lund
* ef/maint-rebase-error-message:
rebase: report invalid commit correctly

l10n: de.po: add additional newlineRalf Thielow Sat, 2 Jun 2012 18:10:31 +0000 (20:10 +0200)

l10n: de.po: add additional newline

The translation of "builtin/gc.c:224" was missing of
a newline which made the second part of the message
quite long. We simply add a newline.

Signed-off-by: Ralf Thielow <ralf.thielow@googlemail.com>

l10n: de.po: translate 2 new, 3 fuzzy messagesRalf Thielow Sat, 2 Jun 2012 15:03:29 +0000 (17:03 +0200)

l10n: de.po: translate 2 new, 3 fuzzy messages

Translate 2 new and 3 fuzzy messages came from git.pot update
in 75f7b4b (l10n: Update git.pot (5 new, 3 removed messages)).

Signed-off-by: Ralf Thielow <ralf.thielow@googlemail.com>

l10n: de.po: translate 41 new messagesRalf Thielow Wed, 23 May 2012 16:53:40 +0000 (18:53 +0200)

l10n: de.po: translate 41 new messages

Signed-off-by: Ralf Thielow <ralf.thielow@googlemail.com>

l10n: de.po: translate 265 new messagesRalf Thielow Fri, 18 May 2012 16:29:52 +0000 (18:29 +0200)

l10n: de.po: translate 265 new messages

Signed-off-by: Ralf Thielow <ralf.thielow@googlemail.com>

l10n: zh_CN.po: translate 2 new, 3 fuzzy messagesJiang Xin Sat, 2 Jun 2012 09:12:59 +0000 (17:12 +0800)

l10n: zh_CN.po: translate 2 new, 3 fuzzy messages

Translate 2 new and 3 fuzzy messages came from git.pot update
in 75f7b4b (l10n: Update git.pot (5 new, 3 removed messages)).

Signed-off-by: Jiang Xin <worldhello.net@gmail.com>

l10n: Update git.pot (5 new, 3 removed messages)Jiang Xin Fri, 1 Jun 2012 23:07:27 +0000 (07:07 +0800)

l10n: Update git.pot (5 new, 3 removed messages)

Generate po/git.pot from v1.7.11-rc0-100-g5498c:

* 5 new l10n messages at lines:
635, 639, 1203, 1208, 3946

* 3 removed l10n messages at lines:
1194, 3158, 3936

Signed-off-by: Jiang Xin <worldhello.net@gmail.com>

Update draft release notes to 1.7.11Junio C Hamano Fri, 1 Jun 2012 20:29:48 +0000 (13:29 -0700)

Update draft release notes to 1.7.11

Signed-off-by: Junio C Hamano <gitster@pobox.com>

Merge branch 'ef/maint-rebase-error-message'Junio C Hamano Fri, 1 Jun 2012 20:28:25 +0000 (13:28 -0700)

Merge branch 'ef/maint-rebase-error-message'

By Erik Faye-Lund
* ef/maint-rebase-error-message:
rebase: report invalid commit correctly

Merge branch 'nh/empty-rebase'Junio C Hamano Fri, 1 Jun 2012 20:28:19 +0000 (13:28 -0700)

Merge branch 'nh/empty-rebase'

* nh/empty-rebase:
cherry-pick: regression fix for empty commits

Merge branch 'vr/rebase-autosquash-does-not-imply-i'Junio C Hamano Fri, 1 Jun 2012 20:28:01 +0000 (13:28 -0700)

Merge branch 'vr/rebase-autosquash-does-not-imply-i'

"git rebase -p" used to pay attention to rebase.autosquash which was
wrong. "git rebase -p -i" should, but "git rebase -p" by itself
should not.

By Vincent van Ravesteijn
* vr/rebase-autosquash-does-not-imply-i:
Do not autosquash in case of an implied interactive rebase

Merge branch 'mm/levenstein-penalize-deletion-less'Junio C Hamano Fri, 1 Jun 2012 20:27:48 +0000 (13:27 -0700)

Merge branch 'mm/levenstein-penalize-deletion-less'

"git tags" used to suggest "git stage" which was nonsense; it should
have favored "git tag". Tweak the cost of deletion to correct it.

By Matthieu Moy
* mm/levenstein-penalize-deletion-less:
Reduce cost of deletion in levenstein distance (4 -> 3)

Merge branch 'jl/submodule-report-new-path-once'Junio C Hamano Fri, 1 Jun 2012 20:26:46 +0000 (13:26 -0700)

Merge branch 'jl/submodule-report-new-path-once'

"git submodule init" used to report "registered for path ..." even
for submodules that were registered earlier.

By Jens Lehmann
* jl/submodule-report-new-path-once:
submodules: print "registered for path" message only once

Sync with maintJunio C Hamano Fri, 1 Jun 2012 20:26:16 +0000 (13:26 -0700)

Sync with maint

Start preparing for 1.7.10.4Junio C Hamano Fri, 1 Jun 2012 20:05:27 +0000 (13:05 -0700)

Start preparing for 1.7.10.4

Signed-off-by: Junio C Hamano <gitster@pobox.com>

Merge branch 'ef/http-o-depends-on-gvf' into maintJunio C Hamano Fri, 1 Jun 2012 20:22:44 +0000 (13:22 -0700)

Merge branch 'ef/http-o-depends-on-gvf' into maint

A minor compilation fix.

By Erik Faye-Lund
* ef/http-o-depends-on-gvf:
Makefile: add missing GIT-VERSION-FILE dependency

Merge git://github.com/git-l10n/git-poJunio C Hamano Fri, 1 Jun 2012 20:21:37 +0000 (13:21 -0700)

Merge git://github.com/git-l10n/git-po

By Jiang Xin (4) and others
via Jiang Xin
* git://github.com/git-l10n/git-po:
l10n: Set nplurals of zh_CN.po from 1 to 2
l10n: zh_CN.po: translate 323 new messages
l10n: zh.CN.po: update by msgmerge git.pot
First release translation for Vietnamese
Init translation for Vietnamese
l10n: New it.po file with 504 translations
Update Swedish translation (728t0f0u)
l10n: Update git.pot (41 new messages)

Merge branch 'rs/maint-grep-F' into maintJunio C Hamano Fri, 1 Jun 2012 20:01:41 +0000 (13:01 -0700)

Merge branch 'rs/maint-grep-F' into maint

"git grep -e '$pattern'", unlike the case where the patterns are read from
a file, did not treat individual lines in the given pattern argument as
separate regular expressions as it should.

By René Scharfe
* rs/maint-grep-F:
grep: stop leaking line strings with -f
grep: support newline separated pattern list
grep: factor out do_append_grep_pat()
grep: factor out create_grep_pat()

Merge branch 'jk/ident-split-fix' into maintJunio C Hamano Fri, 1 Jun 2012 20:01:36 +0000 (13:01 -0700)

Merge branch 'jk/ident-split-fix' into maint

An author/committer name that is a single character was mishandled as an
invalid name by mistake.

By Jeff King
* jk/ident-split-fix:
fix off-by-one error in split_ident_line

Merge branch 'jk/pretty-commit-header-incomplete-line... Junio C Hamano Fri, 1 Jun 2012 20:01:33 +0000 (13:01 -0700)

Merge branch 'jk/pretty-commit-header-incomplete-line' into maint

By Jeff King
* jk/pretty-commit-header-incomplete-line:
avoid segfault when reading header of malformed commits

Merge branch 'jk/format-person-part-buffer-limit' into... Junio C Hamano Fri, 1 Jun 2012 19:59:58 +0000 (12:59 -0700)

Merge branch 'jk/format-person-part-buffer-limit' into maint

By Jeff King
* jk/format-person-part-buffer-limit:
pretty: avoid buffer overflow in format_person_part

Merge branch 'ap/checkout-no-progress-for-non-tty'... Junio C Hamano Fri, 1 Jun 2012 19:59:50 +0000 (12:59 -0700)

Merge branch 'ap/checkout-no-progress-for-non-tty' into maint

"git checkout" gave progress display even when the standard error
stream was not connected to the tty, which made little sense.

By Avery Pennarun
* ap/checkout-no-progress-for-non-tty:
checkout: no progress messages if !isatty(2).

Merge branch 'maint' of git://github.com/git-l10n/git... Junio C Hamano Fri, 1 Jun 2012 19:50:41 +0000 (12:50 -0700)

Merge branch 'maint' of git://github.com/git-l10n/git-po into maint

By Peter Krefting
via Peter Krefting
* 'maint' of git://github.com/git-l10n/git-po:
Update Swedish translation (728t0f0u)

i18n: apply: split to fix a partial i18n messageJiang Xin Thu, 31 May 2012 11:20:42 +0000 (19:20 +0800)

i18n: apply: split to fix a partial i18n message

The 4th arg of "new mode (%o) of %s does not match old mode (%o)%s%s"
is blank string or string " of ". Even mark the string " of " for a
complete i18n, this message is still hard to translate right.

Split it into two slight different messages would make l10n teams happy.

Signed-off-by: Jiang Xin <worldhello.net@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

l10n: Set nplurals of zh_CN.po from 1 to 2Jiang Xin Thu, 31 May 2012 09:35:59 +0000 (17:35 +0800)

l10n: Set nplurals of zh_CN.po from 1 to 2

In most cases, plural-forms are unnecessary for Chinese. For example,
"apple" and "apples" are the same in Chinese, they are both translated
as "苹果". While there are exceptions, e.g., the plural form of "he",
"she" and "it" is "they" in English. In Chinese, "他(he)", "她(she)",
and "它(it)" have plural forms too, they are "他们", "她们", and "它们".

But what makes 'nplurals=1' hard to work right for Chinese is:

#: bundle.c:192
#, c-format
msgid "The bundle requires this ref"
msgid_plural "The bundle requires these %d refs"

Signed-off-by: Jiang Xin <worldhello.net@gmail.com>

l10n: zh_CN.po: translate 323 new messagesJiang Xin Wed, 30 May 2012 04:19:47 +0000 (12:19 +0800)

l10n: zh_CN.po: translate 323 new messages

Update Simplified Chinese translation for 134 fuzzy, 189 new messages
from Git v1.7.10.2-548-g9de96.

Signed-off-by: Jiang Xin <worldhello.net@gmail.com>
Signed-off-by: Zhuang Ya <zhuangya@me.com>

Makefile: add missing GIT-VERSION-FILE dependencyErik Faye-Lund Thu, 31 May 2012 14:10:44 +0000 (16:10 +0200)

Makefile: add missing GIT-VERSION-FILE dependency

In 20fc9bc (Set HTTP user agent to git/GIT_VERSION, 2006-04-04),
http.o started recording GIT_VERSION, but http.o wasn't added
to the list of files that depends on GIT-VERSION-FILE.

Fix this, so mofications to GIT-VERSION-FILE will result in an
updated user-agent string.

Signed-off-by: Erik Faye-Lund <kusmabite@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

l10n: zh.CN.po: update by msgmerge git.potJiang Xin Mon, 21 May 2012 01:35:47 +0000 (09:35 +0800)

l10n: zh.CN.po: update by msgmerge git.pot

Update of zh_CN.po: 134 fuzzy translations, 189 untranslated messages.

Signed-off-by: Jiang Xin <worldhello.net@gmail.com>

First release translation for VietnameseTran Ngoc Quan Thu, 31 May 2012 02:16:38 +0000 (09:16 +0700)

First release translation for Vietnamese

Signed-off-by: Tran Ngoc Quan <vnwildman@gmail.com>

Init translation for VietnameseTran Ngoc Quan Sun, 6 May 2012 02:42:49 +0000 (09:42 +0700)

Init translation for Vietnamese

Signed-off-by: Tran Ngoc Quan <vnwildman@gmail.com>
Signed-off-by: Jiang Xin <worldhello.net@gmail.com>

Add persistent-https to contribColby Ranger Tue, 29 May 2012 21:52:00 +0000 (14:52 -0700)

Add persistent-https to contrib

Git over HTTPS has a high request startup latency, since the SSL
negotiation can take up to a second. In order to reduce this latency,
connections should be left open to the Git server across requests
(or invocations of the git commandline).

Reduce SSL startup latency by running a daemon job that keeps
connections open to a Git server. The daemon job
(git-remote-persistent-https--proxy) is started on the first request
through the client binary (git-remote-persistent-https) and remains
running for 24 hours after the last request, or until a new daemon
binary is placed in the PATH. The client determines the daemon's
HTTP address by communicating over a UNIX socket with the daemon.
From there, the rest of the Git protocol work is delegated to the
"git-remote-http" binary, with the environment's http_proxy set to
the daemon.

Accessing /pub/scm/linux/kernel/git/torvalds/linux repository hosted
at kernel.googlesource.com with "git ls-remote" over https:// and
persistent-https:// 5 times shows that the first request takes about
the same time (0.193s vs 0.208s---there is a slight set-up cost for
the local proxy); as expected, the other four requests are much
faster (~0.18s vs ~0.08s).

Incidentally, this also has the benefit of HTTP keep-alive working
across Git command invocations. Its common for servers to use a 5
minute keep-alive on an HTTP 1.1 connection. Git-over-HTTP commonly
uses Transfer-Encoding: chunked on replies, so keep-alive will
generally just work, even though a pack stream's length isn't known
in advance. Because the helper is an external process holding that
connection open, we also benefit from being able to reuse an
existing TCP connection to the server. The same "git ls-remote"
test against http:// vs persistent-https:// URL shows that the
former takes ~0.09s while the first request for the latter is about
0.134s with set-up cost, and subsequent requests are ~0.065s,
shaving around one RTT to the server.

Signed-off-by: Colby Ranger <cranger@google.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

rebase: report invalid commit correctlyErik Faye-Lund Wed, 30 May 2012 16:39:42 +0000 (18:39 +0200)

rebase: report invalid commit correctly

In 9765b6a (rebase: align variable content, 2011-02-06), the code
to error out was moved up one level. Unfortunately, one reference
to a function parameter wasn't rewritten as it should, leading to
the wrong parameter being errored on.

This error was propagated by 71786f5 (rebase: factor out reference
parsing, 2011-02-06) and merged in 78c6e0f (Merge branch
'mz/rebase', 2011-04-28).

Correct this by reporting $onto_name istead.

Reported-By: Manuela Hutter <manuelah@opera.com>
Signed-off-by: Erik Faye-Lund <kusmabite@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

INSTALL: update asciidoc recommendationJeff King Wed, 30 May 2012 10:18:29 +0000 (06:18 -0400)

INSTALL: update asciidoc recommendation

Since commit 6cf378f (docs: stop using asciidoc no-inline-literal),
we no longer support asciidoc versions less than 8.4.1,
which introduced inline literals. Note this in the INSTALL
document.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

l10n: New it.po file with 504 translationsMarco Paolone Tue, 29 May 2012 21:03:51 +0000 (23:03 +0200)

l10n: New it.po file with 504 translations

Signed-off-by: Marco Paolone <marcopaolone@gmail.com>

cherry-pick: regression fix for empty commitsJunio C Hamano Wed, 30 May 2012 00:14:41 +0000 (17:14 -0700)

cherry-pick: regression fix for empty commits

The earlier "--keep-redundant-commit" series broke "cherry-pick"
that is given a commit whose change is already in the current
history. Such a cherry-pick would result in an empty change, and
should stop with an error, telling the user that conflict resolution
may have made the result empty (which is exactly what is happening),
but we silently dropped the change on the floor without any message
nor non-zero exit code.

Signed-off-by: Junio C Hamano <gitster@pobox.com>