gitweb.git
git-p4: test sync new branchPete Wyckoff Wed, 16 Mar 2011 20:53:53 +0000 (16:53 -0400)

git-p4: test sync new branch

Add two new unit tests. One to test the feature that that
was added in e32e00d, and another to test the regression
that was fixed in the parent to this commit.

Signed-off-by: Pete Wyckoff <pw@padd.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

git-p4: fix sync new branch regressionPete Wyckoff Wed, 16 Mar 2011 20:52:46 +0000 (16:52 -0400)

git-p4: fix sync new branch regression

e32e00d (git-p4: better message for "git-p4 sync" when not
cloned, 2011-02-19) broke another use case, that of using
"git-p4 sync" to import a new branch into an existing repository.

Refine the fix again, on top of the fix in ac34efc.

Reported-by: Michael Horowitz <michael.horowitz@ieee.org>
Signed-off-by: Pete Wyckoff <pw@padd.com>
Tested-by: Michael Horowitz <michael.horowitz@ieee.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

make_absolute_path: return the input path if it points... Carlos Martín Nieto Wed, 16 Mar 2011 16:06:17 +0000 (17:06 +0100)

make_absolute_path: return the input path if it points to our buffer

Some codepaths call make_absolute_path with its own return value as
input. In such a cases, return the path immediately.

This fixes a valgrind-discovered error, whereby we tried to copy a
string onto itself.

Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

valgrind: ignore SSE-based strlen invalid readsCarlos Martín Nieto Wed, 16 Mar 2011 11:46:01 +0000 (12:46 +0100)

valgrind: ignore SSE-based strlen invalid reads

Some versions of strlen use SSE to speed up the calculation and load 4
bytes at a time, even if it means reading past the end of the
allocated memory. This read is safe and when the strlen function is
inlined, it is not replaced by valgrind, which reports a
false-possitive.

Tell valgrind to ignore this particular error, as the read is, in
fact, safe. Current upstream-released version 3.6.1 is affected. Some
distributions have this fixed in their latest versions.

Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

vcs-svn: remove spurious semicolonsJonathan Nieder Wed, 16 Mar 2011 07:02:42 +0000 (02:02 -0500)

vcs-svn: remove spurious semicolons

trp_gen is not a statement or function call, so it should not be
followed with a semicolon. Noticed by gcc -pedantic.

vcs-svn/repo_tree.c:41:81: warning: ISO C does not allow extra ';'
outside of a function [-pedantic]

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

diff --submodule: split into bite-sized piecesJonathan Nieder Wed, 16 Mar 2011 07:14:11 +0000 (02:14 -0500)

diff --submodule: split into bite-sized pieces

Introduce two functions:

- prepare_submodule_summary prepares the revision walker
to list changes in a submodule. That is, it:

* finds merge bases between the commits pointed to this
path from before ("left") and after ("right") the change;
* checks whether this is a fast-forward or fast-backward;
* prepares a revision walk to list commits in the symmetric
difference between the commits at each endpoint.

It returns nonzero on error.

- print_submodule_summary runs the revision walk and saves
the result to a strbuf in --left-right format.

The goal is just readability. No functional change intended.

Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Acked-by: Jens Lehmann <Jens.Lehmann@web.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

cherry: split off function to print output linesJonathan Nieder Wed, 16 Mar 2011 07:12:48 +0000 (02:12 -0500)

cherry: split off function to print output lines

Readers uninterested in the details of "git cherry"'s output format
can see

print_commit('-', commit, verbose, abbrev);

and ignore the details.

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

branch: split off function that writes tracking info... Jonathan Nieder Wed, 16 Mar 2011 07:10:14 +0000 (02:10 -0500)

branch: split off function that writes tracking info and commit subject

Introduce a add_verbose_info function that takes care of adding

- an abbreviated object name;
- a summary of the form [ahead x, behind y] of the relationship
to the corresponding upstream branch;
- a one line commit subject

for the tip commit of a branch, for use in "git branch -v" output.

No functional change intended. This just unindents the code a little
and makes it easier to skip on first reading.

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

standardize brace placement in struct definitionsJonathan Nieder Wed, 16 Mar 2011 07:08:34 +0000 (02:08 -0500)

standardize brace placement in struct definitions

In a struct definitions, unlike functions, the prevailing style is for
the opening brace to go on the same line as the struct name, like so:

struct foo {
int bar;
char *baz;
};

Indeed, grepping for 'struct [a-z_]* {$' yields about 5 times as many
matches as 'struct [a-z_]*$'.

Linus sayeth:

Heretic people all over the world have claimed that this inconsistency
is ... well ... inconsistent, but all right-thinking people know that
(a) K&R are _right_ and (b) K&R are right.

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

compat: make gcc bswap an inline functionJonathan Nieder Wed, 16 Mar 2011 07:00:49 +0000 (02:00 -0500)

compat: make gcc bswap an inline function

Without this change, gcc -pedantic warns:

cache.h: In function 'ce_to_dtype':
cache.h:270:21: warning: ISO C forbids braced-groups within expressions [-pedantic]

An inline function is more readable anyway.

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

enums: omit trailing comma for portabilityJonathan Nieder Wed, 16 Mar 2011 06:59:10 +0000 (01:59 -0500)

enums: omit trailing comma for portability

Since v1.7.2-rc0~23^2~2 (Add per-repository eol normalization,
2010-05-19), building with gcc -std=gnu89 -pedantic produces warnings
like the following:

convert.c:21:11: warning: comma at end of enumerator list [-pedantic]

gcc is right to complain --- these commas are not permitted in C89.
In the spirit of v1.7.2-rc0~32^2~16 (2010-05-14), remove them.

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

Merge branch 'nd/struct-pathspec'Junio C Hamano Wed, 16 Mar 2011 07:17:05 +0000 (00:17 -0700)

Merge branch 'nd/struct-pathspec'

* nd/struct-pathspec:
declare 1-bit bitfields to be unsigned

declare 1-bit bitfields to be unsignedJonathan Nieder Wed, 16 Mar 2011 03:42:32 +0000 (22:42 -0500)

declare 1-bit bitfields to be unsigned

As "gcc -pedantic" notices, a two's complement 1-bit signed integer
cannot represent the value '1'.

dir.c: In function 'init_pathspec':
dir.c:1291:4: warning: overflow in implicit constant conversion [-Woverflow]

In the spirit of v1.7.1-rc1~10 (2010-04-06), 'unsigned' is what was
intended, so let's make the flags unsigned.

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

git-p4: Fix error message crash in P4Sync.commit.Tor Arvid Lund Tue, 15 Mar 2011 12:08:03 +0000 (13:08 +0100)

git-p4: Fix error message crash in P4Sync.commit.

There is an error message that crashes the script because of an invalid ref
to the non-existing "path" variable. It is almost never printed, which
would explain why nobody encountered this problem before... But anyway,
this oneliner fixes it.

Signed-off-by: Tor Arvid Lund <torarvid@gmail.com>
Acked-by: Pete Wyckoff <pw@padd.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Teach git-p4 to ignore case in perforce filenames if... Tor Arvid Lund Tue, 15 Mar 2011 12:08:02 +0000 (13:08 +0100)

Teach git-p4 to ignore case in perforce filenames if configured.

When files are added to perforce, the path to that file has whichever case
configuration that exists on the machine of the user who added the file.
What does that mean? It means that when Alice adds a file

//depot/DirA/FileA.txt

... and Bob adds:

//depot/dirA/FileB.txt

... we may or may not get a problem. If a user sets the config variable
git-p4.ignorecase to "true", we will consider //depot/DirA and //depot/dirA
to be the same directory.

Signed-off-by: Tor Arvid Lund <torarvid@gmail.com>
Acked-by: Pete Wyckoff <pw@padd.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

git-p4: Teach gitConfig method about arguments.Tor Arvid Lund Tue, 15 Mar 2011 12:08:01 +0000 (13:08 +0100)

git-p4: Teach gitConfig method about arguments.

With this patch, it is possible to call the gitConfig method with an optional
argument string, which will be passed to the "git config" executable. For
instance:

gitConfig("core.ignorecase", "--bool")

will ensure that you get the value "true", and won't have to check the returned
value for [1, true, on, yes].

Signed-off-by: Tor Arvid Lund <torarvid@gmail.com>
Acked-by: Pete Wyckoff <pw@padd.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

git-bisect.txt: example for bisecting with hot-fixMichael J Gruber Tue, 15 Mar 2011 21:24:56 +0000 (22:24 +0100)

git-bisect.txt: example for bisecting with hot-fix

Give an example on how to bisect when older revisions need a hot-fix to
build, run or test. Triggered by the binutils/kernel issue at

http://thread.gmane.org/gmane.comp.gnu.binutils/52601/focus=1112779

Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

git-bisect.txt: streamline run presentationMichael J Gruber Tue, 15 Mar 2011 21:24:55 +0000 (22:24 +0100)

git-bisect.txt: streamline run presentation

Streamline the presentation of "bisect run" by removing one example
which does not introduce new concepts.

Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Update draft release notes to 1.7.5Junio C Hamano Tue, 15 Mar 2011 22:17:54 +0000 (15:17 -0700)

Update draft release notes to 1.7.5

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

Merge branch 'jk/strbuf-vaddf'Junio C Hamano Tue, 15 Mar 2011 21:23:04 +0000 (14:23 -0700)

Merge branch 'jk/strbuf-vaddf'

* jk/strbuf-vaddf:
compat: fall back on __va_copy if available
strbuf: add strbuf_vaddf
compat: provide a fallback va_copy definition

Merge branch 'mm/push-default-advice'Junio C Hamano Tue, 15 Mar 2011 21:22:55 +0000 (14:22 -0700)

Merge branch 'mm/push-default-advice'

* mm/push-default-advice:
push: better error message when no remote configured
push: better error messages when push.default = tracking

Merge branch 'jn/maint-instaweb-plack-fix'Junio C Hamano Tue, 15 Mar 2011 21:22:37 +0000 (14:22 -0700)

Merge branch 'jn/maint-instaweb-plack-fix'

* jn/maint-instaweb-plack-fix:
git-instaweb: Change how gitweb.psgi is made runnable as standalone app

Merge branch 'sp/maint-fd-limit'Junio C Hamano Tue, 15 Mar 2011 21:22:23 +0000 (14:22 -0700)

Merge branch 'sp/maint-fd-limit'

* sp/maint-fd-limit:
sha1_file.c: Don't retain open fds on small packs
mingw: add minimum getrlimit() compatibility stub
Limit file descriptors used by packs

Merge branch 'jc/checkout-orphan-warning'Junio C Hamano Tue, 15 Mar 2011 21:22:16 +0000 (14:22 -0700)

Merge branch 'jc/checkout-orphan-warning'

* jc/checkout-orphan-warning:
commit: give final warning when reattaching HEAD to leave commits behind

Merge branch 'jh/maint-do-not-track-non-branches'Junio C Hamano Tue, 15 Mar 2011 21:22:13 +0000 (14:22 -0700)

Merge branch 'jh/maint-do-not-track-non-branches'

* jh/maint-do-not-track-non-branches:
branch/checkout --track: Ensure that upstream branch is indeed a branch

Merge branch 'fk/maint-cvsimport-early-failure'Junio C Hamano Tue, 15 Mar 2011 21:22:09 +0000 (14:22 -0700)

Merge branch 'fk/maint-cvsimport-early-failure'

* fk/maint-cvsimport-early-failure:
git-cvsimport.perl: Bail out right away when reading from the server fails

Merge branch 'jc/maint-apply-report-offset'Junio C Hamano Tue, 15 Mar 2011 21:22:02 +0000 (14:22 -0700)

Merge branch 'jc/maint-apply-report-offset'

* jc/maint-apply-report-offset:
apply -v: show offset count when patch did not apply exactly

Merge branch 'jc/maint-apply-no-double-patch'Junio C Hamano Tue, 15 Mar 2011 21:22:00 +0000 (14:22 -0700)

Merge branch 'jc/maint-apply-no-double-patch'

* jc/maint-apply-no-double-patch:
apply: do not patch lines that were already patched

Merge branch 'mr/hpux'Junio C Hamano Tue, 15 Mar 2011 21:21:47 +0000 (14:21 -0700)

Merge branch 'mr/hpux'

* mr/hpux:
git-compat-util.h: Honor HP C's noreturn attribute
Makefile: add NO_FNMATCH_CASEFOLD to HP-UX section

Documentation: running test with --debug keeps "trash... Piotr Krukowiecki Tue, 15 Mar 2011 19:58:14 +0000 (20:58 +0100)

Documentation: running test with --debug keeps "trash" directory

Signed-off-by: Piotr Krukowiecki <piotr.krukowiecki@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Merge branch 'jk/doc-credits' of git://github.com/peff/gitJunio C Hamano Tue, 15 Mar 2011 20:32:09 +0000 (13:32 -0700)

Merge branch 'jk/doc-credits' of git://github.com/peff/git

* 'jk/doc-credits' of git://github.com/peff/git:
docs: point git.txt author credits to git-scm.com
doc: add missing git footers
doc: drop author/documentation sections from most pages

tests: scrub environment of GIT_* variablesJonathan Nieder Tue, 15 Mar 2011 10:10:45 +0000 (05:10 -0500)

tests: scrub environment of GIT_* variables

Variables from the inherited environment that are meaningful to git
can break tests in undesirable ways. For example,

GIT_PAGER=more sh t5400-send-pack.sh -v -i

hangs. So unset all environment variables in the GIT_ namespace in
test-lib, with a few exceptions:

- GIT_TRACE* are useful for tracking down bugs exhibited by a failing
test;

- GIT_DEBUG* are GIT_TRACE variables by another name, practically
speaking. They should probably be tweaked to follow the
GIT_TRACE_foo scheme and use trace_printf machinery some time.

- GIT_USE_LOOKUP from v1.5.6-rc0~134^2~1 (sha1-lookup: more memory
efficient search in sorted list of SHA-1, 2007-12-29) is about
trying an alternate implementation strategy rather than changing
semantics and it can be useful to compare performance with and
without it set.

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

config: drop support for GIT_CONFIG_NOGLOBALJonathan Nieder Tue, 15 Mar 2011 09:04:49 +0000 (04:04 -0500)

config: drop support for GIT_CONFIG_NOGLOBAL

Now that test-lib sets $HOME to protect against pollution from user
settings, GIT_CONFIG_NOGLOBAL is not needed for use by the test
suite any more. And as luck would have it, a quick code search
reveals no other users in the wild.

This patch does not affect GIT_CONFIG_NOSYSTEM, which is still
needed.

Helped-by: Jeff King <peff@peff.net>
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

gitattributes: drop support for GIT_ATTR_NOGLOBALJonathan Nieder Tue, 15 Mar 2011 09:04:15 +0000 (04:04 -0500)

gitattributes: drop support for GIT_ATTR_NOGLOBAL

test-lib sets $HOME to protect against pollution from user settings,
so setting GIT_ATTR_NOGLOBAL would be redundant. Simplify by
eliminating support for that environment variable altogether.

GIT_ATTR_NOGLOBAL was introduced in v1.7.4-rc0~208^2 (Add global and
system-wide gitattributes, 2010-09-01) as an undocumented feature for
use by the test suite. It never ended up being used (neither within
git.git nor in other projects).

This patch does not affect GIT_ATTR_NOSYSTEM, which should still be
useful.

Helped-by: Jeff King <peff@peff.net>
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

tests: suppress system gitattributesJonathan Nieder Tue, 15 Mar 2011 09:05:10 +0000 (04:05 -0500)

tests: suppress system gitattributes

Set GIT_ATTR_NOSYSTEM in test-lib to make tests more reliable in two
ways:

- an invalid GIT_ATTR_NOSYSTEM setting should not cause tests to fail
with "fatal: bad config value for 'GIT_ATTR_NOSYSTEM'".

- /etc/gitattributes should not change the outcome of tests.

Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Improved-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

tests: stop worrying about obsolete environment variablesJonathan Nieder Tue, 15 Mar 2011 10:09:24 +0000 (05:09 -0500)

tests: stop worrying about obsolete environment variables

After v0.99.7~99 (Retire support for old environment variables,
2005-09-09), there is no more need to unset a stray AUTHOR_NAME
variable that might have entered the test environment.

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

upload-pack: Implement no-done capabilityShawn O. Pearce Tue, 15 Mar 2011 00:59:40 +0000 (17:59 -0700)

upload-pack: Implement no-done capability

If the client requests both multi_ack_detailed and no-done then
upload-pack is free to immediately send a PACK following its first
'ACK %s ready' message. The upload-pack response actually winds
up being:

ACK %s common
... (maybe more) ...
ACK %s ready
NAK
ACK %s
PACK.... the pack stream ....

For smart HTTP connections this saves one HTTP RPC, reducing
the overall latency for a trivial fetch. For git:// and ssh://
a no-done option slightly reduces latency by removing one
server->client->server round-trip at the end of the common
ancestor negotiation.

Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

fetch-pack: Implement no-done capabilityShawn O. Pearce Tue, 15 Mar 2011 00:59:39 +0000 (17:59 -0700)

fetch-pack: Implement no-done capability

If enabled on the connection "multi_ack_detailed no-done" as a
pair allows the remote upload-pack process to send a PACK down
to the client as soon as a "ACK %s ready" message was also sent.

Over git:// and ssh:// where a bi-directional stream is in place
this has very little difference over the classical version that
waits for the client to send a "done\n" line by itself. It does
slightly reduce the latency involved to start the pack stream as
there is one less round-trip from client->server required.

Over smart HTTP this avoids needing to send a final RPC that has
all of the prior common objects. Instead the server is able to
return a pack as soon as its ready to. For many common users the
smart HTTP fetch is now just 2 requests: GET .../info/refs, and
a POST .../git-upload-pack to not only negotiate but also receive
the pack stream. Only users who have more than 32 local unshared
commits with the remote will need additional requests to negotiate
a common merge base.

Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

upload-pack: More aggressively send 'ACK %s ready'Shawn O. Pearce Mon, 14 Mar 2011 23:48:39 +0000 (16:48 -0700)

upload-pack: More aggressively send 'ACK %s ready'

If a client is merely following the remote (and has not made any
new commits itself), all "have %s" lines sent by the client will be
common to the server. As all lines are common upload-pack never
calls ok_to_give_up() and does not compute if it has a good cut
point in the commit graph.

Without this computation the following client is going to send all
tagged commits, as these were determined to be COMMON_REF during the
initial advertisement, but the client does not parse their history
to transitively pass the COMMON flag and empty its queue of commits.

For git.git with 339 commit tags, it takes clients 11 rounds of
negotation to fully send all tagged commits and exhaust its queue
of things to send as common. This is pretty slow for a client that
has not done any local development activity.

Force computing ok_to_give_up() and send "ACK %s ready" at the end
of the current round if this round only contained common objects
and ok_to_give_up() was therefore not called. This may allow the
client to break early, avoiding transmission of the COMMON_REFs.

Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

fetch-pack: Finish negotation if remote replies "ACK... Shawn O. Pearce Mon, 14 Mar 2011 23:48:38 +0000 (16:48 -0700)

fetch-pack: Finish negotation if remote replies "ACK %s ready"

If multi_ack_detailed was selected in the protocol capabilities
(both client and server are >= Git 1.6.6) the upload-pack side will
send "ACK %s ready" when it knows how to safely cut the graph and
produce a reasonable pack for the want list that was already sent
on the connection.

Upon receiving "ACK %s ready" there is no point in looking at
the remaining commits inside of rev_list. Sending additional
"have %s" lines to the remote will not construct a smaller pack.
It is unlikely a commit older than the current cut point will have
a better delta base than the cut point itself has.

The original design of this code had fetch-pack empty rev_list by
marking a commit and its transitive ancestors COMMON whenever the
remote side said "ACK %s {continue,common}" and skipping over any
already COMMON commits during get_rev(). This approach does not
work when most of rev_list is actually COMMON_REF, commits that
are pointed to by a reference on the remote, which exist locally,
and which have not yet been sent to the remote as a "have %s" line.

Most of the common references are tags in the ref/tags namespace,
using points in the commit graph that are more than 1 commit apart.
In git.git itself, this is currently 340 tags, 339 of which point to
commits in the commit graph. fetch-pack pushes all of these into
rev_list, but is unable to mark them COMMON and discard during a
remote's "ACK %s {continue,common}" because it does not parse through
the entire parent chain. Not parsing the entire parent chain is
an optimization to avoid walking back to the roots of the repository.

Assuming the client is only following the remote (and does not make
its own local commits), the client needs 11 rounds to spin through
the entire list of tags (32 commits per round, ceil(339/32) == 11).
Unfortunately the server knows on the first "have %s" line that
it can produce a good pack, and does not need to see the remaining
320 tags in the other 10 rounds.

Over git:// and ssh:// this isn't as bad as it sounds, the client is
only transmitting an extra 16,000 bytes that it doesn't need to send.

Over smart HTTP, the client must do an additional 10 HTTP POST
requests, each of which incurs round-trip latency, and must upload
the entire state vector of all known common objects. On the final
POST request, this is 16 KiB worth of data.

Fix all of this by clearing rev_list as soon as the remote side
says it can construct a pack.

Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

list-objects.c: don't add an unparsed NULL as a pending... Junio C Hamano Mon, 14 Mar 2011 19:29:50 +0000 (12:29 -0700)

list-objects.c: don't add an unparsed NULL as a pending tree

"git rev-list --first-parent --boundary $commit^..$commit" segfaults on a
merge commit since 8d2dfc4 (process_{tree,blob}: show objects without
buffering, 2009-04-10), as it tried to dereference a commit that was
discarded as UNINTERESTING without being parsed (hence lacking "tree").

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

Merge branch 'sp/maint-smart-http-sans-100-continue'Junio C Hamano Mon, 14 Mar 2011 18:59:10 +0000 (11:59 -0700)

Merge branch 'sp/maint-smart-http-sans-100-continue'

* sp/maint-smart-http-sans-100-continue:
smart-http: Really never use Expect: 100-continue

smart-http: Really never use Expect: 100-continueShawn O. Pearce Mon, 14 Mar 2011 18:28:17 +0000 (11:28 -0700)

smart-http: Really never use Expect: 100-continue

libcurl may choose to try and use Expect: 100-continue for
any type of POST, not just a Transfer: chunked-encoding type.
Force it to disable this feature, as not all proxy servers support
100-continue and leaving it enabled can cause 1 second stalls during
the negotiation phase of fetch-pack/upload-pack.

In ("206b099d26 smart-http: Don't use Expect: 100-Continue") we
tried to disable this for only large POST bodies, but it should be
disabled for every POST body.

Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Documentation: "rebase <onto> <that>" stays on <that... Drew Northup Mon, 14 Mar 2011 15:47:37 +0000 (11:47 -0400)

Documentation: "rebase <onto> <that>" stays on <that> branch upon exit

This change makes it clearer that the change to the history effected by
executing 'git rebase master' while on 'topic' branch, and by executing
'git rebase master topic' on any branch, will be the same; the implicit
checkout of the second form will remain after the rebase exits.

Signed-off-by: Drew Northup <drew.northup@maine.edu>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

object.h: Remove obsolete struct object_refsJakob Pfender Mon, 14 Mar 2011 16:23:52 +0000 (17:23 +0100)

object.h: Remove obsolete struct object_refs

7914053 (Remove unused object-ref code, 2008-02-25) removed all uses of
the structure from the code, but forgot to remove the type definition
itself.

Signed-off-by: Jakob Pfender <jpfender@elegosoft.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

git stash: show status relative to current directoryPiotr Krukowiecki Sat, 12 Mar 2011 08:57:46 +0000 (09:57 +0100)

git stash: show status relative to current directory

git status shows modified paths relative to current directory, so it's
possible to copy&paste them directly, even if you're in a subdirectory.

But "git stash apply" always shows status from root of git repository.
This is misleading because you can't use the paths without modifications.

This is caused by changing directory to root of repository at the
beginning of git stash.

This patch makes git stash show status relative to current directory.
Instead of removing the "cd to toplevel", which would affect whole
script and might have other side-effects, the fix is to change directory
temporarily back to original dir just before displaying status.

Signed-off-by: Piotr Krukowiecki <piotr.krukowiecki@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Merge branch 'pw/p4'Junio C Hamano Sun, 13 Mar 2011 08:10:06 +0000 (00:10 -0800)

Merge branch 'pw/p4'

* pw/p4:
git-p4: test clone @all
git-p4: fix clone @all regression

git-p4: test clone @allPete Wyckoff Sat, 12 Mar 2011 16:24:49 +0000 (11:24 -0500)

git-p4: test clone @all

Cloning a p4 depot by default generates a single commit. The use
of the "@all" revision specifier instead tells git-p4 to import
all commits. Check to make sure both these invocations work as
expected.

Signed-off-by: Pete Wyckoff <pw@padd.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

git-p4: fix clone @all regressionPete Wyckoff Sat, 12 Mar 2011 16:23:23 +0000 (11:23 -0500)

git-p4: fix clone @all regression

e32e00d (git-p4: better message for "git-p4 sync" when not cloned,
2011-02-19) broke the use of the "@all" revision specifier, e.g.,

git-p4 clone //depot/xxx@all

Fix it as per Tor Arvid's quick patch.

Signed-off-by: Pete Wyckoff <pw@padd.com>
Reported-by: Anatol Pomozov <anatol.pomozov@gmail.com>
Based-on-patch-by: Tor Arvid Lund <torarvid@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

docs: point git.txt author credits to git-scm.comJeff King Sun, 13 Mar 2011 03:00:38 +0000 (22:00 -0500)

docs: point git.txt author credits to git-scm.com

There is a nice shortlog-ish output of the authors there. We
also point people directly to shortlog, but of course they
might be reading the documentation online or from a binary
package of git.

Make the default abbrev length configurableLinus Torvalds Thu, 28 Oct 2010 18:28:04 +0000 (11:28 -0700)

Make the default abbrev length configurable

The default of 7 comes from fairly early in git development, when
seven hex digits was a lot (it covers about 250+ million hash
values). Back then I thought that 65k revisions was a lot (it was what
we were about to hit in BK), and each revision tends to be about 5-10
new objects or so, so a million objects was a big number.

These days, the kernel isn't even the largest git project, and even
the kernel has about 220k revisions (_much_ bigger than the BK tree
ever was) and we are approaching two million objects. At that point,
seven hex digits is still unique for a lot of them, but when we're
talking about just two orders of magnitude difference between number
of objects and the hash size, there _will_ be collisions in truncated
hash values. It's no longer even close to unrealistic - it happens all
the time.

We should both increase the default abbrev that was unrealistically
small, _and_ add a way for people to set their own default per-project
in the git config file.

This is the first step to first make it configurable; the default of 7
is not raised yet.

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

doc: add missing git footersJeff King Fri, 11 Mar 2011 06:08:48 +0000 (01:08 -0500)

doc: add missing git footers

Almost every page has a footer that links back to the main
git(1) page. Let's add it on the few that are missing it.

doc: drop author/documentation sections from most pagesJeff King Fri, 11 Mar 2011 05:52:08 +0000 (00:52 -0500)

doc: drop author/documentation sections from most pages

The point of these sections is generally to:

1. Give credit where it is due.

2. Give the reader an idea of where to ask questions or
file bug reports.

But they don't do a good job of either case. For (1), they
are out of date and incomplete. A much more accurate answer
can be gotten through shortlog or blame. For (2), the
correct contact point is generally git@vger, and even if you
wanted to cc the contact point, the out-of-date and
incomplete fields mean you're likely sending to somebody
useless.

So let's drop the fields entirely from all manpages except
git(1) itself. We already point people to the mailing list
for bug reports there, and we can update the Authors section
to give credit to the major contributors and point to
shortlog and blame for more information.

Each page has a "This is part of git" footer, so people can
follow that to the main git manpage.

Merge branch 'maint'Junio C Hamano Fri, 11 Mar 2011 06:45:49 +0000 (22:45 -0800)

Merge branch 'maint'

* maint:
Revert "core.abbrevguard: Ensure short object names stay unique a bit longer"

Revert "core.abbrevguard: Ensure short object names... Junio C Hamano Fri, 11 Mar 2011 06:41:14 +0000 (22:41 -0800)

Revert "core.abbrevguard: Ensure short object names stay unique a bit longer"

This reverts commit 72a5b561fc1c4286bc7c5b0693afc076af261e1f, as adding
fixed number of hexdigits more than necessary to make one object name
locally unique does not help in futureproofing the uniqueness of names
we generate today.

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

bash: complete 'git diff ...branc<TAB>'SZEDER Gábor Thu, 10 Mar 2011 18:12:29 +0000 (19:12 +0100)

bash: complete 'git diff ...branc<TAB>'

While doing a final sanity check before merging a topic Bsomething, it
is a good idea to review what damage Bsomething branch would make, by
running:

$ git diff ...Bsomething

Unfortunately, our completion script for 'git diff' doesn't offer
anything after '...'. This is because 'git diff's completion function
invokes __git_complete_file() for non-option arguments to complete the
'<tree>:<path>' extended SHA-1 notation, but this helper function
doesn't support refs after '...' or '..'. Completion of refs after
'...' or '..' is supported by the __git_complete_revlist() helper
function, but that doesn't support '<tree>:<path>'.

To support both '...<ref>' and '<tree>:<path>' notations for 'git
diff', this patch, instead of adding yet another helper function,
joins __git_complete_file() and __git_complete_revlist() into the new
common function __git_complete_revlist_file(). The old helper
functions __git_complete_file() and __git_complete_revlist() are
changed to be a direct wrapper around the new
__git_complete_revlist_file(), because they might be used in
user-supplied completion scripts and we don't want to break them.

This change will cause some wrong suggestions for other commands which
use __git_complete_file() ('git diff' and friends) or
__git_complete_revlist() ('git log' and friends), e.g. 'git diff
...master:Doc<TAB>' and 'git log master:Doc<TAB>' will complete the
path to 'Documentation/', although neither commands make any sense.
However, both of these were actively wrong to begin with as soon as
the user entered the ':', so there is no real harm done.

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

bash: fix misindented esac statement in __git_complete_... SZEDER Gábor Thu, 10 Mar 2011 18:12:28 +0000 (19:12 +0100)

bash: fix misindented esac statement in __git_complete_file()

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

git-log: put space after commit markMichael J Gruber Thu, 10 Mar 2011 14:45:03 +0000 (15:45 +0100)

git-log: put space after commit mark

Currently, commit marks (left, right, boundary, cherry) are output right
before the commit sha1, which makes it difficult to copy sha1s. Sample
output for "git log --oneline --cherry":

=049c269 t6007: test rev-list --cherry

Change this to

= 049c269 t6007: test rev-list --cherry

which matches exactly the current output of "git log --graph".

Leave "git rev-list" output as is (no space) so that they do not break.

Adjust "git-svn" which uses "git log --pretty=raw --boundary".

Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

i18n: git-shortlog basic messagesÆvar Arnfjörð Bjarmason Tue, 22 Feb 2011 23:42:32 +0000 (23:42 +0000)

i18n: git-shortlog basic messages

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

i18n: git-revert split up "could not revert/apply"... Ævar Arnfjörð Bjarmason Tue, 22 Feb 2011 23:42:31 +0000 (23:42 +0000)

i18n: git-revert split up "could not revert/apply" message

Split up the "could not %s %s... %s" message into "could not revert
%s... %s" and "could not apply %s... %s". This makes it easier for
translators to understand the message.

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

i18n: git-revert literal "me" messagesÆvar Arnfjörð Bjarmason Tue, 22 Feb 2011 23:42:30 +0000 (23:42 +0000)

i18n: git-revert literal "me" messages

Translate messages that use the `me' variable. These are all error
messages referencing the command name, so the name shouldn't be
translated.

Reported-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

i18n: git-revert "Your local changes" messageÆvar Arnfjörð Bjarmason Tue, 22 Feb 2011 23:42:29 +0000 (23:42 +0000)

i18n: git-revert "Your local changes" message

Translate the "Your local changes [...]" message without using the
`me' variable, instead split up the two messages so translators can
translate the whole messages as-is.

Reported-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

i18n: git-revert basic messagesÆvar Arnfjörð Bjarmason Tue, 22 Feb 2011 23:42:28 +0000 (23:42 +0000)

i18n: git-revert basic messages

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

i18n: git-notes GIT_NOTES_REWRITE_MODE error messageÆvar Arnfjörð Bjarmason Tue, 22 Feb 2011 23:42:27 +0000 (23:42 +0000)

i18n: git-notes GIT_NOTES_REWRITE_MODE error message

Use sprintf format for the error message that's displayed if
GIT_NOTES_REWRITE_MODE is invalid, and leave a note in a TRANSLATORS
comment indicating what the message means.

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

i18n: git-notes basic commandsÆvar Arnfjörð Bjarmason Tue, 22 Feb 2011 23:42:26 +0000 (23:42 +0000)

i18n: git-notes basic commands

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

i18n: git-gc "Auto packing the repository" messageÆvar Arnfjörð Bjarmason Tue, 22 Feb 2011 23:42:25 +0000 (23:42 +0000)

i18n: git-gc "Auto packing the repository" message

Split up the "Auto packing the repository" message into quiet and
verbose variants to make translation easier.

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

i18n: git-gc basic messagesÆvar Arnfjörð Bjarmason Tue, 22 Feb 2011 23:42:24 +0000 (23:42 +0000)

i18n: git-gc basic messages

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

i18n: git-describe basic messagesÆvar Arnfjörð Bjarmason Tue, 22 Feb 2011 23:42:23 +0000 (23:42 +0000)

i18n: git-describe basic messages

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

i18n: git-clean clean.requireForce messagesÆvar Arnfjörð Bjarmason Tue, 22 Feb 2011 23:42:22 +0000 (23:42 +0000)

i18n: git-clean clean.requireForce messages

Split up the "clean.requireForce set/defaults to true..." die()
message to make it easier to translate.

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

i18n: git-clean basic messagesÆvar Arnfjörð Bjarmason Tue, 22 Feb 2011 23:42:21 +0000 (23:42 +0000)

i18n: git-clean basic messages

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

i18n: git-bundle basic messagesÆvar Arnfjörð Bjarmason Tue, 22 Feb 2011 23:42:20 +0000 (23:42 +0000)

i18n: git-bundle basic messages

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

i18n: git-archive basic messagesÆvar Arnfjörð Bjarmason Tue, 22 Feb 2011 23:42:19 +0000 (23:42 +0000)

i18n: git-archive basic messages

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

i18n: git-status "renamed: " messageÆvar Arnfjörð Bjarmason Tue, 22 Feb 2011 23:42:18 +0000 (23:42 +0000)

i18n: git-status "renamed: " message

Gettextize the "renamed: %s -> %s" message which appears as part of
git-status(1) output. Two tests in t4001-diff-rename.sh explicitly
checked for this message. Change them to skip under
GETTEXT_POISON=YesPlease.

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

i18n: git-status "Initial commit" messageÆvar Arnfjörð Bjarmason Tue, 22 Feb 2011 23:42:17 +0000 (23:42 +0000)

i18n: git-status "Initial commit" message

Gettextize the "# Initial commit" message. A test in t7501-commit.sh
explicitly checked for this message. Change it to skip under
GETTEXT_POISON=YesPlease.

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

i18n: git-status "Changes to be committed" messageÆvar Arnfjörð Bjarmason Tue, 22 Feb 2011 23:42:16 +0000 (23:42 +0000)

i18n: git-status "Changes to be committed" message

Gettextize the "# Changes to be committed:" messages. Several tests
explicitly checked for this message. Change them to skip under
GETTEXT_POISON=YesPlease.

Since these tests didn't check for the rest of the git-status(1)
output this change has been split up from the "git-status basic
messages" patch.

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

i18n: git-status shortstatus messagesÆvar Arnfjörð Bjarmason Tue, 22 Feb 2011 23:42:15 +0000 (23:42 +0000)

i18n: git-status shortstatus messages

Make the messages added in v1.7.2-rc0~54^2~1 translatable. Some of
these could use the to be implemented plural support in the gettext
library.

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

i18n: git-status "nothing to commit" messagesÆvar Arnfjörð Bjarmason Tue, 22 Feb 2011 23:42:14 +0000 (23:42 +0000)

i18n: git-status "nothing to commit" messages

Gettextize the "nothing to commit" messages. Many tests explicitly
checked for this message. Change them to skip under
GETTEXT_POISON=YesPlease.

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

i18n: git-status basic messagesÆvar Arnfjörð Bjarmason Tue, 22 Feb 2011 23:42:13 +0000 (23:42 +0000)

i18n: git-status basic messages

Gettextize the most common git-status messages. Many tests checked for
these explicitly. Change them to skip under GETTEXT_POISON=YesPlease.

Some of the tests in t7508-status.sh needed to be split up when I
added C_LOCALE_OUTPUT to them, since parts of them affected later
tests (some of which aren't being skipped) indirectly.

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

i18n: git-push "prevent you from losing" messageÆvar Arnfjörð Bjarmason Tue, 22 Feb 2011 23:42:12 +0000 (23:42 +0000)

i18n: git-push "prevent you from losing" message

Gettextize the "To prevent you from losing history" message. A test in
lib-httpd.sh and another in t5541-http-push.sh explicitly checked for
this message. Change them to skip under GETTEXT_POISON=YesPlease.

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

i18n: git-push basic messagesÆvar Arnfjörð Bjarmason Tue, 22 Feb 2011 23:42:11 +0000 (23:42 +0000)

i18n: git-push basic messages

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

i18n: git-tag tag_template messageÆvar Arnfjörð Bjarmason Tue, 22 Feb 2011 23:42:10 +0000 (23:42 +0000)

i18n: git-tag tag_template message

Mark the tag_template message as translatable with N_() and then use
it later with _(). We need to skip a test under GETTEXT_POISON that
relies on the output having a leading newline.

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

i18n: git-tag basic messagesÆvar Arnfjörð Bjarmason Tue, 22 Feb 2011 23:42:09 +0000 (23:42 +0000)

i18n: git-tag basic messages

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

i18n: git-reset "Unstaged changes after reset" messageÆvar Arnfjörð Bjarmason Tue, 22 Feb 2011 23:42:08 +0000 (23:42 +0000)

i18n: git-reset "Unstaged changes after reset" message

Gettextize the ""Unstaged changes after reset:" message. A test in
t7102-reset.sh explicitly checked for this message. Change it to skip
under GETTEXT_POISON=YesPlease.

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

i18n: git-reset reset_type_names messagesÆvar Arnfjörð Bjarmason Tue, 22 Feb 2011 23:42:07 +0000 (23:42 +0000)

i18n: git-reset reset_type_names messages

Make the messages in git-reset that use the reset_type_names static
array to be translatable by marking the array items with N_() and
using _() later.

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

i18n: git-reset basic messagesÆvar Arnfjörð Bjarmason Tue, 22 Feb 2011 23:42:06 +0000 (23:42 +0000)

i18n: git-reset basic messages

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

i18n: git-rm basic messagesÆvar Arnfjörð Bjarmason Tue, 22 Feb 2011 23:42:05 +0000 (23:42 +0000)

i18n: git-rm basic messages

Make the basic git-mv messages translatable, but skip things like "rm
'%s'\n" and "git rm '%s'\n" for now.

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

i18n: git-mv "bad" messagesÆvar Arnfjörð Bjarmason Tue, 22 Feb 2011 23:42:04 +0000 (23:42 +0000)

i18n: git-mv "bad" messages

Gettextize messages made by assigning to the "bad" char* variable.

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

i18n: git-mv basic messagesÆvar Arnfjörð Bjarmason Tue, 22 Feb 2011 23:42:03 +0000 (23:42 +0000)

i18n: git-mv basic messages

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

i18n: git-merge "Wonderful" messageÆvar Arnfjörð Bjarmason Tue, 22 Feb 2011 23:42:02 +0000 (23:42 +0000)

i18n: git-merge "Wonderful" message

Gettextize the "Wonderful" message. A test in t7600-merge.sh
explicitly checked for this message. Change it to skip under
GETTEXT_POISON=YesPlease.

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

i18n: git-merge "You have not concluded your merge... Ævar Arnfjörð Bjarmason Tue, 22 Feb 2011 23:42:01 +0000 (23:42 +0000)

i18n: git-merge "You have not concluded your merge" messages

Gettextize the "You have not concluded your merge messages. A test in
t3030-merge-recursive.sh explicitly checked for this message. Change
it to skip the test under GETTEXT_POISON=YesPlease.

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

i18n: git-merge "Updating %s..%s" messageÆvar Arnfjörð Bjarmason Tue, 22 Feb 2011 23:42:00 +0000 (23:42 +0000)

i18n: git-merge "Updating %s..%s" message

Gettextize the "Updating %s..%s\n" message. A test in
t1200-tutorial.sh explicitly checked for this message. Split it into
two tests to skip the test_cmp test under GETTEXT_POISON=YesPlease.

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

i18n: git-merge basic messagesÆvar Arnfjörð Bjarmason Tue, 22 Feb 2011 23:41:59 +0000 (23:41 +0000)

i18n: git-merge basic messages

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

i18n: git-log "--OPT does not make sense" messagesÆvar Arnfjörð Bjarmason Tue, 22 Feb 2011 23:41:58 +0000 (23:41 +0000)

i18n: git-log "--OPT does not make sense" messages

Gettextize the "--name-only/--name-status/--check does not make sense"
messages. A test in t4014-format-patch.sh explicitly checked for these
messages. Change them to skip under GETTEXT_POISON=YesPlease.

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

i18n: git-log basic messagesÆvar Arnfjörð Bjarmason Tue, 22 Feb 2011 23:41:57 +0000 (23:41 +0000)

i18n: git-log basic messages

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

i18n: git-grep "--open-files-in-pager" messageÆvar Arnfjörð Bjarmason Tue, 22 Feb 2011 23:41:56 +0000 (23:41 +0000)

i18n: git-grep "--open-files-in-pager" message

Gettextize the "--open-files-in-pager only works on the worktree"
message. A test in t7811-grep-open.sh explicitly checked for this
message. Change it to skip under GETTEXT_POISON=YesPlease.

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

i18n: git-grep basic messagesÆvar Arnfjörð Bjarmason Tue, 22 Feb 2011 23:41:55 +0000 (23:41 +0000)

i18n: git-grep basic messages

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

i18n: git-fetch split up "(non-fast-forward)" messageÆvar Arnfjörð Bjarmason Tue, 22 Feb 2011 23:41:54 +0000 (23:41 +0000)

i18n: git-fetch split up "(non-fast-forward)" message

Split up the "(non-fast-forward)" message from printf directives and
make it translatable.

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

i18n: git-fetch update_local_ref messagesÆvar Arnfjörð Bjarmason Tue, 22 Feb 2011 23:41:53 +0000 (23:41 +0000)

i18n: git-fetch update_local_ref messages

Translate a "[rejected]" message spotted by Jeff King, and other
things in update_local_ref along with it.

Reported-by: Jeff King <peff@peff.net>
Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

i18n: git-fetch formatting messagesÆvar Arnfjörð Bjarmason Tue, 22 Feb 2011 23:41:52 +0000 (23:41 +0000)

i18n: git-fetch formatting messages

Translate some of the formatting messages that appear on git-fetch
showing how branches/tags etc. were updated.

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

i18n: git-fetch basic messagesÆvar Arnfjörð Bjarmason Tue, 22 Feb 2011 23:41:51 +0000 (23:41 +0000)

i18n: git-fetch basic messages

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>