gitweb.git
rename "match_refs()" to "match_push_refs()"Junio C Hamano Fri, 9 Sep 2011 18:54:58 +0000 (11:54 -0700)

rename "match_refs()" to "match_push_refs()"

Yes, there is a warning that says the function is only used by push in big
red letters in front of this function, but it didn't say a more important
thing it should have said: what the function is for and what it does.

Rename it and document it to avoid future confusion.

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

send-pack: typofix error messageJunio C Hamano Wed, 7 Sep 2011 20:56:38 +0000 (13:56 -0700)

send-pack: typofix error message

The message identifies the process as receive-pack when it cannot fork the
sideband demultiplexer. We are actually a send-pack.

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

refactor run_receive_hook()Junio C Hamano Thu, 8 Sep 2011 19:17:09 +0000 (12:17 -0700)

refactor run_receive_hook()

Running a hook has to make complex set-up to establish web of
communication between child process and multiplexer, which is common
regardless of what kind of data is fed to the hook. Refactor the parts
that is specific to the data fed to the particular set of hooks from the
part that runs the hook, so that the code can be reused to drive hooks
that take different kind of data.

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

Update draft release notes to 1.7.7Junio C Hamano Tue, 6 Sep 2011 18:48:21 +0000 (11:48 -0700)

Update draft release notes to 1.7.7

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

Merge branch 'rc/histogram-diff'Junio C Hamano Tue, 6 Sep 2011 18:42:58 +0000 (11:42 -0700)

Merge branch 'rc/histogram-diff'

* rc/histogram-diff:
xdiff/xprepare: initialise xdlclassifier_t cf in xdl_prepare_env()

Merge branch 'cb/maint-ls-files-error-report'Junio C Hamano Tue, 6 Sep 2011 18:42:55 +0000 (11:42 -0700)

Merge branch 'cb/maint-ls-files-error-report'

* cb/maint-ls-files-error-report:
t3005: do not assume a particular order of stdout and stderr of git-ls-files

Merge branch 'mh/check-ref-format-print-normalize'Junio C Hamano Tue, 6 Sep 2011 18:42:52 +0000 (11:42 -0700)

Merge branch 'mh/check-ref-format-print-normalize'

* mh/check-ref-format-print-normalize:
Forbid DEL characters in reference names
check-ref-format --print: Normalize refnames that start with slashes

Sync with 1.7.6.2Junio C Hamano Tue, 6 Sep 2011 18:42:12 +0000 (11:42 -0700)

Sync with 1.7.6.2

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

Git 1.7.6.2 v1.7.6.2Junio C Hamano Tue, 6 Sep 2011 18:41:02 +0000 (11:41 -0700)

Git 1.7.6.2

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

Revert "Merge branch 'cb/maint-quiet-push' into maint"Junio C Hamano Tue, 6 Sep 2011 18:06:32 +0000 (11:06 -0700)

Revert "Merge branch 'cb/maint-quiet-push' into maint"

This reverts commit ffa69e61d3c5730bd4b65a465efc130b0ef3c7df, reversing
changes made to 4a13c4d14841343d7caad6ed41a152fee550261d.

Adding a new command line option to receive-pack and feed it from
send-pack is not an acceptable way to add features, as there is no
guarantee that your updated send-pack will be talking to updated
receive-pack. New features need to be added via the capability mechanism
negotiated over the protocol.

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

Update draft release notes to 1.7.7Junio C Hamano Fri, 2 Sep 2011 20:26:02 +0000 (13:26 -0700)

Update draft release notes to 1.7.7

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

Merge branch 'js/i18n-scripts-2'Junio C Hamano Fri, 2 Sep 2011 20:18:42 +0000 (13:18 -0700)

Merge branch 'js/i18n-scripts-2'

* js/i18n-scripts-2:
bisect: take advantage of gettextln, eval_gettextln.

Merge branch 'tr/maint-t3903-misquoted-command'Junio C Hamano Fri, 2 Sep 2011 20:18:39 +0000 (13:18 -0700)

Merge branch 'tr/maint-t3903-misquoted-command'

* tr/maint-t3903-misquoted-command:
t3903: fix misquoted rev-parse invocation

Merge branch 'bc/bisect-test-use-shell-path'Junio C Hamano Fri, 2 Sep 2011 20:18:37 +0000 (13:18 -0700)

Merge branch 'bc/bisect-test-use-shell-path'

* bc/bisect-test-use-shell-path:
t6030: use $SHELL_PATH to invoke user's preferred shell instead of bare sh

Merge branch 'va/p4-branch-import-test-update'Junio C Hamano Fri, 2 Sep 2011 20:18:33 +0000 (13:18 -0700)

Merge branch 'va/p4-branch-import-test-update'

* va/p4-branch-import-test-update:
git-p4: simple branch tests edits

Merge branch 'tr/maint-strbuf-grow-nul-termination'Junio C Hamano Fri, 2 Sep 2011 20:18:29 +0000 (13:18 -0700)

Merge branch 'tr/maint-strbuf-grow-nul-termination'

* tr/maint-strbuf-grow-nul-termination:
strbuf_grow(): maintain nul-termination even for new buffer

Merge branch 'tr/maint-ident-to-git-memmove'Junio C Hamano Fri, 2 Sep 2011 20:18:25 +0000 (13:18 -0700)

Merge branch 'tr/maint-ident-to-git-memmove'

* tr/maint-ident-to-git-memmove:
Use memmove in ident_to_git

Merge branch 'tr/maint-format-patch-empty-output'Junio C Hamano Fri, 2 Sep 2011 20:18:22 +0000 (13:18 -0700)

Merge branch 'tr/maint-format-patch-empty-output'

* tr/maint-format-patch-empty-output:
Document negated forms of format-patch --to --cc --add-headers
t4014: "no-add-headers" is actually called "no-add-header"
t4014: invoke format-patch with --stdout where intended
t4014: check for empty files from git format-patch --stdout

Merge branch 'gb/maint-am-stgit-author-to-from-fix'Junio C Hamano Fri, 2 Sep 2011 20:18:11 +0000 (13:18 -0700)

Merge branch 'gb/maint-am-stgit-author-to-from-fix'

* gb/maint-am-stgit-author-to-from-fix:
am: fix stgit patch mangling

Merge branch 'gb/maint-am-patch-format-error-message'Junio C Hamano Fri, 2 Sep 2011 20:18:07 +0000 (13:18 -0700)

Merge branch 'gb/maint-am-patch-format-error-message'

* gb/maint-am-patch-format-error-message:
am: format is in $patch_format, not parse_patch

Conflicts:
git-am.sh

Merge branch 'ms/daemon-timeout-is-in-seconds'Junio C Hamano Fri, 2 Sep 2011 20:17:58 +0000 (13:17 -0700)

Merge branch 'ms/daemon-timeout-is-in-seconds'

* ms/daemon-timeout-is-in-seconds:
git-daemon.txt: specify --timeout in seconds

Merge branch 'bg/t5540-osx-grep'Junio C Hamano Fri, 2 Sep 2011 20:17:50 +0000 (13:17 -0700)

Merge branch 'bg/t5540-osx-grep'

* bg/t5540-osx-grep:
t5540-http-test: shorten grep pattern

Merge branch 'jc/clean-exclude-doc'Junio C Hamano Fri, 2 Sep 2011 20:17:46 +0000 (13:17 -0700)

Merge branch 'jc/clean-exclude-doc'

* jc/clean-exclude-doc:
Documentation: clarify "git clean -e <pattern>"

Merge branch 'mg/maint-notes-C-doc'Junio C Hamano Fri, 2 Sep 2011 20:17:40 +0000 (13:17 -0700)

Merge branch 'mg/maint-notes-C-doc'

* mg/maint-notes-C-doc:
git-notes.txt: clarify -C vs. copy and -F

Merge branch 'fg/submodule-ff-check-before-push'Junio C Hamano Fri, 2 Sep 2011 20:07:58 +0000 (13:07 -0700)

Merge branch 'fg/submodule-ff-check-before-push'

* fg/submodule-ff-check-before-push:
push: Don't push a repository with unpushed submodules

Merge branch 'rc/diff-cleanup-records'Junio C Hamano Fri, 2 Sep 2011 19:07:11 +0000 (12:07 -0700)

Merge branch 'rc/diff-cleanup-records'

* rc/diff-cleanup-records:
xdiff/xprepare: improve O(n*m) performance in xdl_cleanup_records()

Merge branch 'fk/use-kwset-pickaxe-grep-f'Junio C Hamano Fri, 2 Sep 2011 17:00:38 +0000 (10:00 -0700)

Merge branch 'fk/use-kwset-pickaxe-grep-f'

* fk/use-kwset-pickaxe-grep-f:
obstack: Fix portability issues
Use kwset in grep
Use kwset in pickaxe
Adapt the kwset code to Git
Add string search routines from GNU grep
Add obstack.[ch] from EGLIBC 2.10

Merge branch 'en/merge-recursive-2'Junio C Hamano Fri, 2 Sep 2011 17:00:18 +0000 (10:00 -0700)

Merge branch 'en/merge-recursive-2'

* en/merge-recursive-2: (57 commits)
merge-recursive: Don't re-sort a list whose order we depend upon
merge-recursive: Fix virtual merge base for rename/rename(1to2)/add-dest
t6036: criss-cross + rename/rename(1to2)/add-dest + simple modify
merge-recursive: Avoid unnecessary file rewrites
t6022: Additional tests checking for unnecessary updates of files
merge-recursive: Fix spurious 'refusing to lose untracked file...' messages
t6022: Add testcase for spurious "refusing to lose untracked" messages
t3030: fix accidental success in symlink rename
merge-recursive: Fix working copy handling for rename/rename/add/add
merge-recursive: add handling for rename/rename/add-dest/add-dest
merge-recursive: Have conflict_rename_delete reuse modify/delete code
merge-recursive: Make modify/delete handling code reusable
merge-recursive: Consider modifications in rename/rename(2to1) conflicts
merge-recursive: Create function for merging with branchname:file markers
merge-recursive: Record more data needed for merging with dual renames
merge-recursive: Defer rename/rename(2to1) handling until process_entry
merge-recursive: Small cleanups for conflict_rename_rename_1to2
merge-recursive: Fix rename/rename(1to2) resolution for virtual merge base
merge-recursive: Introduce a merge_file convenience function
merge-recursive: Fix modify/delete resolution in the recursive case
...

git-svn: Teach dcommit --mergeinfo to handle multiple... Bryan Jacobs Wed, 31 Aug 2011 16:48:39 +0000 (12:48 -0400)

git-svn: Teach dcommit --mergeinfo to handle multiple lines

"svn dcommit --mergeinfo" replaces the svn:mergeinfo property in an
upstream SVN repository with the given text. The svn:mergeinfo
property may contain commits originating on multiple branches,
separated by newlines.

Cause space characters in the mergeinfo to be replaced by newlines,
allowing a user to create history representing multiple branches being
merged into one.

Update the corresponding documentation and add a test for the new
functionality.

Signed-off-by: Bryan Jacobs <bjacobs@woti.com>
Acked-by: Sam Vilain <sam@vilain.net>
Acked-by: Eric Wong <normalperson@yhbt.net>

git-svn: fix fetch with moved path when using rewriteRootEric Wong Mon, 29 Aug 2011 00:45:44 +0000 (00:45 +0000)

git-svn: fix fetch with moved path when using rewriteRoot

The matching step in commit 3235b7053c45a734c1cdf9b117bda68b7ced29c9
did not properly account for users of the "rewriteRoot"
configuration parameter.

ref: <CANWsHyfHtr0EaJtNsDK9UTcmb_AbLg-1jUA-0uWJ-nEeNosb7w@mail.gmail.com>

Suggested-by: H Krishnan <hetchkay@gmail.com>
Signed-off-by: Eric Wong <normalperson@yhbt.net>

git-svn: New flag to emulate empty directoriesRay Chen Wed, 20 Jul 2011 22:37:26 +0000 (18:37 -0400)

git-svn: New flag to emulate empty directories

Adds a --preserve-empty-dirs flag to the clone operation that will detect
empty directories in the remote Subversion repository and create placeholder
files in the corresponding local Git directories. This allows "empty"
directories to exist in the history of a Git repository.

Also adds the --placeholder-file flag to control the name of any placeholder
files created. Default value is ".gitignore".

Signed-off-by: Ray Chen <rchen@cs.umd.edu>
Acked-by: Eric Wong <normalperson@yhbt.net>

xdiff/xprepare: initialise xdlclassifier_t cf in xdl_pr... Tay Ray Chuan Wed, 31 Aug 2011 04:48:46 +0000 (12:48 +0800)

xdiff/xprepare: initialise xdlclassifier_t cf in xdl_prepare_env()

Ensure that the xdl_free_classifier() call on xdlclassifier_t cf is safe
even if xdl_init_classifier() isn't called. This may occur in the case
where diff is run with --histogram and a call to, say, xdl_prepare_ctx()
fails.

Signed-off-by: Tay Ray Chuan <rctay89@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

t6030: use $SHELL_PATH to invoke user's preferred shell... Brandon Casey Mon, 29 Aug 2011 20:09:25 +0000 (13:09 -0700)

t6030: use $SHELL_PATH to invoke user's preferred shell instead of bare sh

Some platforms (IRIX, Solaris) provide an ancient /bin/sh which chokes on
modern shell syntax like $(). SHELL_PATH is provided to allow the user to
specify a working sh, let's use it here.

Signed-off-by: Brandon Casey <casey@nrlssc.navy.mil>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

bisect: take advantage of gettextln, eval_gettextln.Jon Seymour Tue, 30 Aug 2011 23:09:47 +0000 (09:09 +1000)

bisect: take advantage of gettextln, eval_gettextln.

Signed-off-by: Jon Seymour <jon.seymour@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Merge branch 'maint'Junio C Hamano Tue, 30 Aug 2011 19:35:51 +0000 (12:35 -0700)

Merge branch 'maint'

* maint:
Documentation: clarify effects of -- <path> arguments

t3903: fix misquoted rev-parse invocationThomas Rast Tue, 30 Aug 2011 00:06:07 +0000 (02:06 +0200)

t3903: fix misquoted rev-parse invocation

!"git ..." hopefully always succeeds because "git ..." is not the name
of any executable. However, that's not what was intended. Unquote
it, and while we're at it, also replace ! with test_must_fail since it
is a call to git.

Signed-off-by: Thomas Rast <trast@student.ethz.ch>
Acked-by: Jon Seymour <jon.seymour@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Documentation: clarify effects of -- <path> argumentsThomas Rast Tue, 30 Aug 2011 09:21:07 +0000 (11:21 +0200)

Documentation: clarify effects of -- <path> arguments

'git log -- <path>' does not "show commits that affect the specified
paths" in a literal sense unless --full-history is given (for example,
a file that only existed on a side branch will turn up no commits at
all!).

Reword it to specify the actual intent of the filtering, and point to
the "History Simplification" section.

Signed-off-by: Thomas Rast <trast@student.ethz.ch>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

strbuf_grow(): maintain nul-termination even for new... Thomas Rast Mon, 29 Aug 2011 21:16:12 +0000 (23:16 +0200)

strbuf_grow(): maintain nul-termination even for new buffer

In the case where sb is initialized to the slopbuf (through
strbuf_init(sb,0) or STRBUF_INIT), strbuf_grow() loses the terminating
nul: it grows the buffer, but gives ALLOC_GROW a NULL source to avoid
it being freed. So ALLOC_GROW does not copy anything to the new
memory area.

This subtly broke the call to strbuf_getline in read_next_command()
[fast-import.c:1855], which goes

strbuf_detach(&command_buf, NULL); # command_buf is now = STRBUF_INIT
stdin_eof = strbuf_getline(&command_buf, stdin, '\n');
if (stdin_eof)
return EOF;

In strbuf_getwholeline, this did

strbuf_grow(sb, 0); # loses nul-termination
if (feof(fp))
return EOF;
strbuf_reset(sb); # this would have nul-terminated!

Valgrind found this because fast-import subsequently uses prefixcmp()
on command_buf.buf, which after the EOF exit contains only
uninitialized memory.

Arguably strbuf_getwholeline is also broken, in that it touches the
buffer before deciding whether to do any work. However, it seems more
futureproof to not let the strbuf API lose the nul-termination by its
own fault.

So make sure that strbuf_grow() puts in a nul even if it has nowhere
to copy it from. This makes strbuf_grow(sb, 0) a semantic no-op as
far as readers of the buffer are concerned.

Also remove the nul-termination added by strbuf_init, which is made
redudant.

Signed-off-by: Thomas Rast <trast@student.ethz.ch>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Document negated forms of format-patch --to --cc -... Thomas Rast Mon, 29 Aug 2011 20:10:49 +0000 (22:10 +0200)

Document negated forms of format-patch --to --cc --add-headers

The negated forms introduced in c426003 (format-patch: add --no-cc,
--no-to, and --no-add-headers, 2010-03-07) were not documented
anywhere. Add them to the descriptions of the positive forms.

Signed-off-by: Thomas Rast <trast@student.ethz.ch>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

t4014: "no-add-headers" is actually called "no-add... Thomas Rast Mon, 29 Aug 2011 20:10:48 +0000 (22:10 +0200)

t4014: "no-add-headers" is actually called "no-add-header"

Since c426003 (format-patch: add --no-cc, --no-to, and
--no-add-headers, 2010-03-07) the tests have checked for an option
called --no-add-headers introduced by letting the user negate
--add-header.

However, the parseopt machinery does not automatically pluralize
anything, so it is in fact called --no-add-header.

Since the option never worked, is not documented anywhere, and
implementing an actual --no-add-headers would lead to silly code
complications, we just adapt the test to the code.

Signed-off-by: Thomas Rast <trast@student.ethz.ch>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

t4014: invoke format-patch with --stdout where intendedThomas Rast Mon, 29 Aug 2011 20:10:47 +0000 (22:10 +0200)

t4014: invoke format-patch with --stdout where intended

The test wrote something along the lines of 0001-foo.patch to output,
which of course never contained a signature. Luckily the tested
behaviour is actually present.

Signed-off-by: Thomas Rast <trast@student.ethz.ch>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

t4014: check for empty files from git format-patch... Thomas Rast Mon, 29 Aug 2011 20:10:46 +0000 (22:10 +0200)

t4014: check for empty files from git format-patch --stdout

Most kinds of failure in 'git format-patch --stdout >output' will
result in an empty 'output'. This slips past checks that only verify
absence of output, such as the '! grep ...' that are quite prevalent
in t4014.

Introduce a helper check_patch() that checks that at least From, Date
and Subject are present, thus making sure it looks vaguely like a
patch (or cover letter) email. Then insert calls to it in all tests
that do have positive checks for content.

This makes two of the tests fail. Mark them as such; they'll be
fixed in a moment.

Signed-off-by: Thomas Rast <trast@student.ethz.ch>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Use memmove in ident_to_gitThomas Rast Mon, 29 Aug 2011 20:06:04 +0000 (22:06 +0200)

Use memmove in ident_to_git

convert_to_git sets src=dst->buf if any of the preceding conversions
actually did any work. Thus in ident_to_git we have to use memmove
instead of memcpy as far as src->dst copying is concerned.

Signed-off-by: Thomas Rast <trast@student.ethz.ch>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

am: fix stgit patch manglingGiuseppe Bilotta Mon, 29 Aug 2011 16:44:07 +0000 (18:44 +0200)

am: fix stgit patch mangling

Signed-off-by: Giuseppe Bilotta <giuseppe.bilotta@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

git-p4: simple branch tests editsPete Wyckoff Mon, 29 Aug 2011 09:32:23 +0000 (10:32 +0100)

git-p4: simple branch tests edits

More review comments.

Signed-off-by: Pete Wyckoff <pw@padd.com>
Signed-off-by: Vitor Antunes <vitor.hda@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

am: format is in $patch_format, not parse_patchGiuseppe Bilotta Mon, 29 Aug 2011 15:22:06 +0000 (17:22 +0200)

am: format is in $patch_format, not parse_patch

The error message given when the patch format was not recognized was
wrong, since the variable checked was $parse_patch rather than
$patch_format. Fix by checking the non-emptyness of the correct
variable.

Signed-off-by: Giuseppe Bilotta <giuseppe.bilotta@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

t5540-http-test: shorten grep patternBrian Gernhardt Mon, 29 Aug 2011 06:42:21 +0000 (02:42 -0400)

t5540-http-test: shorten grep pattern

On OS X, the grep pattern

"\"OP .*/objects/$x2/X38_X40 HTTP/[.0-9]*\" 20[0-9] "

is too long ($x38 and $x40 represent 38 and 40 copies of [0-9a-f]) for
grep to handle. In order to still be able to match this, use the sed
invocation to replace what we're looking for with a token.

Improved-by: Junio C Hamano <gitster@pobox.com>
Signed-off-by: Brian Gernhardt <brian@gernhardtsoftware.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Documentation: clarify "git clean -e <pattern>"Junio C Hamano Thu, 25 Aug 2011 18:29:57 +0000 (11:29 -0700)

Documentation: clarify "git clean -e <pattern>"

The current explanation of -e can be misread as allowing the user to say

I know 'git clean -XYZ' (substitute -XYZ with any option and/or
parameter) will remove paths A, B, and C, and I want them all removed
except for paths matching this pattern by adding '-e C' to the same
command line, i.e. 'git clean -e C -XYZ'.

But that is not what this option does. It augments the set of ignore rules
from the command line, just like the same "-e <pattern>" argument does
with the "ls-files" command (the user could probably pass "-e \!C" to tell
the command to clean everything the command would normally remove, except
for C). Also error out when both -x and -e are given with an explanation of
what -e means---it is a symptom of misunderstanding what -e does.

It also fixes small style nit in the parameter to add_exclude() call. The
current code only works because EXC_CMDL happens to be defined as 0.

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

t3005: do not assume a particular order of stdout and... Johannes Sixt Sun, 28 Aug 2011 07:34:56 +0000 (09:34 +0200)

t3005: do not assume a particular order of stdout and stderr of git-ls-files

There is no guarantee that stderr is flushed before stdout when both
channels are redirected to a file. Check the channels using independent
files.

Signed-off-by: Johannes Sixt <j6t@kdbg.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

obstack: Fix portability issuesFredrik Kuivinen Sun, 28 Aug 2011 20:08:46 +0000 (22:08 +0200)

obstack: Fix portability issues

i686-apple-darwin10-gcc-4.2.1 (GCC) 4.2.1, SunOS 5.10, and possibly
others do not have exit.h and exitfail.h. Remove the use of these in
obstack.c.

The __block variable was renamed to block to avoid a gcc error:

compat/obstack.h:190: error: __block attribute can be specified on variables only

Initial-patch-by: David Aguilar <davvid@gmail.com>
Reported-by: Brian Gernhardt <brian@gernhardtsoftware.com>
Signed-off-by: Fredrik Kuivinen <frekui@gmail.com>
Acked-by: David Aguilar <davvid@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Update draft release notes to 1.7.7Junio C Hamano Mon, 29 Aug 2011 04:49:35 +0000 (21:49 -0700)

Update draft release notes to 1.7.7

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

Merge branch 'nd/decorate-grafts'Junio C Hamano Mon, 29 Aug 2011 04:22:58 +0000 (21:22 -0700)

Merge branch 'nd/decorate-grafts'

* nd/decorate-grafts:
log: Do not decorate replacements with --no-replace-objects
log: decorate "replaced" on to replaced commits
log: decorate grafted commits with "grafted"
Move write_shallow_commits to fetch-pack.c
Add for_each_commit_graft() to iterate all grafts
decoration: do not mis-decorate refs with same prefix

Merge branch 'nd/maint-clone-gitdir'Junio C Hamano Mon, 29 Aug 2011 04:20:28 +0000 (21:20 -0700)

Merge branch 'nd/maint-clone-gitdir'

* nd/maint-clone-gitdir:
clone: allow to clone from .git file
read_gitfile_gently(): rename misnamed function to read_gitfile()

Merge branch 'ci/forbid-unwanted-current-branch-update'Junio C Hamano Mon, 29 Aug 2011 04:19:31 +0000 (21:19 -0700)

Merge branch 'ci/forbid-unwanted-current-branch-update'

* ci/forbid-unwanted-current-branch-update:
Show interpreted branch name in error messages
Prevent force-updating of the current branch

Merge branch 'jk/pager-with-external-command'Junio C Hamano Mon, 29 Aug 2011 04:19:25 +0000 (21:19 -0700)

Merge branch 'jk/pager-with-external-command'

* jk/pager-with-external-command:
support pager.* for external commands

Merge branch 'jc/maint-clone-alternates'Junio C Hamano Mon, 29 Aug 2011 04:19:21 +0000 (21:19 -0700)

Merge branch 'jc/maint-clone-alternates'

* jc/maint-clone-alternates:
clone: clone from a repository with relative alternates
clone: allow more than one --reference

Conflicts:
builtin/clone.c

Merge branch 'jk/color-and-pager'Junio C Hamano Mon, 29 Aug 2011 04:19:16 +0000 (21:19 -0700)

Merge branch 'jk/color-and-pager'

* jk/color-and-pager:
want_color: automatically fallback to color.ui
diff: don't load color config in plumbing
config: refactor get_colorbool function
color: delay auto-color decision until point of use
git_config_colorbool: refactor stdout_is_tty handling
diff: refactor COLOR_DIFF from a flag into an int
setup_pager: set GIT_PAGER_IN_USE
t7006: use test_config helpers
test-lib: add helper functions for config
t7006: modernize calls to unset

Conflicts:
builtin/commit.c
parse-options.c

Merge branch 'mh/attr'Junio C Hamano Mon, 29 Aug 2011 04:19:12 +0000 (21:19 -0700)

Merge branch 'mh/attr'

* mh/attr:
Unroll the loop over passes
Change while loop into for loop
Determine the start of the states outside of the pass loop
Change parse_attr() to take a pointer to struct attr_state
Increment num_attr in parse_attr_line(), not parse_attr()
Document struct match_attr
Add a file comment

Merge branch 'di/fast-import-tagging'Junio C Hamano Mon, 29 Aug 2011 04:18:48 +0000 (21:18 -0700)

Merge branch 'di/fast-import-tagging'

* di/fast-import-tagging:
fast-import: allow to tag newly created objects
fast-import: add tests for tagging blobs

Merge branch 'di/fast-import-blob-tweak'Junio C Hamano Mon, 29 Aug 2011 04:18:47 +0000 (21:18 -0700)

Merge branch 'di/fast-import-blob-tweak'

* di/fast-import-blob-tweak:
fast-import: treat cat-blob as a delta base hint for next blob
fast-import: count and report # of calls to diff_delta in stats

Merge branch 'di/fast-import-deltified-tree'Junio C Hamano Mon, 29 Aug 2011 04:18:47 +0000 (21:18 -0700)

Merge branch 'di/fast-import-deltified-tree'

* di/fast-import-deltified-tree:
fast-import: prevent producing bad delta
fast-import: add a test for tree delta base corruption

Merge branch 'di/fast-import-ident'Junio C Hamano Mon, 29 Aug 2011 04:18:47 +0000 (21:18 -0700)

Merge branch 'di/fast-import-ident'

* di/fast-import-ident:
fsck: improve committer/author check
fsck: add a few committer name tests
fast-import: check committer name more strictly
fast-import: don't fail on omitted committer name
fast-import: add input format tests

Merge branch 'bw/doc-repo-layout'Junio C Hamano Mon, 29 Aug 2011 04:15:34 +0000 (21:15 -0700)

Merge branch 'bw/doc-repo-layout'

* bw/doc-repo-layout:
Mark http-fetch without -a as deprecated
Documentation: Grammar correction, wording fixes and cleanup

Merge branch 'va/p4-branch-import'Junio C Hamano Mon, 29 Aug 2011 04:15:34 +0000 (21:15 -0700)

Merge branch 'va/p4-branch-import'

* va/p4-branch-import:
git-p4: Add simple test case for branch import
git-p4: Allow branch definition with git config
git-p4: Allow filtering Perforce branches by user
git-p4: Correct branch base depot path detection
git-p4: Process detectCopiesHarder with --bool
git-p4: Add test case for copy detection
git-p4: Add test case for rename detection
git-p4: Add description of rename/copy detection options
git-p4: Allow setting rename/copy detection threshold

Merge branch 'jc/combine-diff-callback'Junio C Hamano Mon, 29 Aug 2011 04:15:33 +0000 (21:15 -0700)

Merge branch 'jc/combine-diff-callback'

* jc/combine-diff-callback:
combine-diff: support format_callback

Merge branch 'nk/branch-v-abbrev'Junio C Hamano Mon, 29 Aug 2011 04:15:33 +0000 (21:15 -0700)

Merge branch 'nk/branch-v-abbrev'

* nk/branch-v-abbrev:
branch -v: honor core.abbrev

git-daemon.txt: specify --timeout in secondsMichael Stapelberg Sat, 27 Aug 2011 14:29:20 +0000 (16:29 +0200)

git-daemon.txt: specify --timeout in seconds

Signed-off-by: Michael Stapelberg <michael@stapelberg.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Forbid DEL characters in reference namesMichael Haggerty Sat, 27 Aug 2011 04:12:44 +0000 (06:12 +0200)

Forbid DEL characters in reference names

DEL is an ASCII control character and therefore should not be
permitted in reference names. Add tests for this and other unusual
characters.

Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Git 1.7.7-rc0 v1.7.7-rc0Junio C Hamano Fri, 26 Aug 2011 04:00:46 +0000 (21:00 -0700)

Git 1.7.7-rc0

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

log: Do not decorate replacements with --no-replace... Michael J Gruber Thu, 25 Aug 2011 15:09:30 +0000 (17:09 +0200)

log: Do not decorate replacements with --no-replace-objects

5267d29 (log: decorate "replaced" on to replaced commits, 2011-08-19)
introduced textual decorations for replaced commits, based on the
detection of refs/replace.

Make it so that additionally the use of --no-replace-objects is
detected: I.e. replaced commits are only decorated as replaced when they
are actually replaced.

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

Merge branch 'jc/merge-reword'Junio C Hamano Thu, 25 Aug 2011 23:00:53 +0000 (16:00 -0700)

Merge branch 'jc/merge-reword'

* jc/merge-reword:
merge: reword the final message

Merge branch 'mg/branch-set-upstream-previous'Junio C Hamano Thu, 25 Aug 2011 23:00:49 +0000 (16:00 -0700)

Merge branch 'mg/branch-set-upstream-previous'

* mg/branch-set-upstream-previous:
branch.c: use the parsed branch name

Merge branch 'da/difftool-mergtool-refactor'Junio C Hamano Thu, 25 Aug 2011 23:00:43 +0000 (16:00 -0700)

Merge branch 'da/difftool-mergtool-refactor'

* da/difftool-mergtool-refactor:
mergetools/meld: Use '--output' when available
mergetool--lib: Refactor tools into separate files
mergetool--lib: Make style consistent with git
difftool--helper: Make style consistent with git

Merge branch 'jc/maint-autofix-tag-in-head'Junio C Hamano Thu, 25 Aug 2011 23:00:37 +0000 (16:00 -0700)

Merge branch 'jc/maint-autofix-tag-in-head'

* jc/maint-autofix-tag-in-head:
commit: reduce use of redundant global variables

Merge branch 'di/fast-import-doc'Junio C Hamano Thu, 25 Aug 2011 23:00:32 +0000 (16:00 -0700)

Merge branch 'di/fast-import-doc'

* di/fast-import-doc:
doc/fast-import: document feature import-marks-if-exists

Merge branch 'jn/plug-empty-tree-leak'Junio C Hamano Thu, 25 Aug 2011 23:00:29 +0000 (16:00 -0700)

Merge branch 'jn/plug-empty-tree-leak'

* jn/plug-empty-tree-leak:
merge-recursive: take advantage of hardcoded empty tree
revert: plug memory leak in "cherry-pick root commit" codepath

Merge branch 'ac/describe-dirty-refresh'Junio C Hamano Thu, 25 Aug 2011 23:00:24 +0000 (16:00 -0700)

Merge branch 'ac/describe-dirty-refresh'

* ac/describe-dirty-refresh:
describe: Refresh the index when run with --dirty

Merge branch 'di/parse-options-split'Junio C Hamano Thu, 25 Aug 2011 23:00:20 +0000 (16:00 -0700)

Merge branch 'di/parse-options-split'

* di/parse-options-split:
Reduce parse-options.o dependencies
parse-options: export opterr, optbug

Merge branch 'js/i18n-scripts'Junio C Hamano Thu, 25 Aug 2011 23:00:16 +0000 (16:00 -0700)

Merge branch 'js/i18n-scripts'

* js/i18n-scripts:
submodule: take advantage of gettextln and eval_gettextln.
stash: take advantage of eval_gettextln
pull: take advantage of eval_gettextln
git-am: take advantage of gettextln and eval_gettextln.
gettext: add gettextln, eval_gettextln to encode common idiom

Merge branch 'maint'Junio C Hamano Thu, 25 Aug 2011 23:00:07 +0000 (16:00 -0700)

Merge branch 'maint'

* maint:
whitespace: have SP on both sides of an assignment "="
update-ref: whitespace fix

whitespace: have SP on both sides of an assignment "="Junio C Hamano Thu, 25 Aug 2011 21:46:52 +0000 (14:46 -0700)

whitespace: have SP on both sides of an assignment "="

I've deliberately excluded the borrowed code in compat/nedmalloc
directory.

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

update-ref: whitespace fixPang Yan Han Thu, 25 Aug 2011 15:40:50 +0000 (23:40 +0800)

update-ref: whitespace fix

Signed-off-by: Pang Yan Han <pangyanhan@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

check-ref-format --print: Normalize refnames that start... Michael Haggerty Thu, 25 Aug 2011 19:19:24 +0000 (21:19 +0200)

check-ref-format --print: Normalize refnames that start with slashes

When asked if "refs///heads/master" is valid, check-ref-format says "Yes,
it is well formed", and when asked to print canonical form, it shows
"refs/heads/master". This is so that it can be tucked after "$GIT_DIR/"
to form a valid pathname for a loose ref, and we normalize a pathname like
"$GIT_DIR/refs///heads/master" to de-dup the slashes in it.

Similarly, when asked if "/refs/heads/master" is valid, check-ref-format
says "Yes, it is Ok", but the leading slash is not removed when printing,
leading to "$GIT_DIR//refs/heads/master".

Fix it to make sure such leading slashes are removed. Add tests that such
refnames are accepted and normalized correctly.

Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

git-notes.txt: clarify -C vs. copy and -FMichael J Gruber Thu, 25 Aug 2011 10:26:37 +0000 (12:26 +0200)

git-notes.txt: clarify -C vs. copy and -F

The current description of '-C' together with the analogy to 'git commit
-C' can lead to the wrong conclusion that '-C' copies notes between
objects. Make this clearer by rewording and pointing to 'copy'.

The example for attaching binary notes with 'git hash-object' followed
by 'git notes add -C' immediately raises the question: "Why not use 'git
notes add -F'?". Answer it (the latter is not binary-safe).

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

Sync with 1.7.6.1Junio C Hamano Wed, 24 Aug 2011 19:18:02 +0000 (12:18 -0700)

Sync with 1.7.6.1

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

Git 1.7.6.1 v1.7.6.1Junio C Hamano Wed, 24 Aug 2011 19:16:58 +0000 (12:16 -0700)

Git 1.7.6.1

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

Merge branch 'jc/maint-smart-http-race-upload-pack... Junio C Hamano Wed, 24 Aug 2011 19:16:15 +0000 (12:16 -0700)

Merge branch 'jc/maint-smart-http-race-upload-pack' into maint

* jc/maint-smart-http-race-upload-pack:
get_indexed_object can return NULL if nothing is in that slot; check for it

get_indexed_object can return NULL if nothing is in... Brian Harring Wed, 24 Aug 2011 05:47:17 +0000 (22:47 -0700)

get_indexed_object can return NULL if nothing is in that slot; check for it

This fixes a segfault introduced by 051e400; via it, no longer able to
trigger the http/smartserv race.

Signed-off-by: Brian Harring <ferringb@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Mark http-fetch without -a as deprecatedBen Walton Wed, 24 Aug 2011 00:29:51 +0000 (20:29 -0400)

Mark http-fetch without -a as deprecated

As the use of http-fetch without -a can create an object store that is
invalid to the point where it cannot even be fsck'd, mark it as
deprecated. A future release should change the default and then
remove the option entirely.

Signed-off-by: Ben Walton <bwalton@artsci.utoronto.ca>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Documentation: Grammar correction, wording fixes and... Ben Walton Wed, 24 Aug 2011 00:32:35 +0000 (20:32 -0400)

Documentation: Grammar correction, wording fixes and cleanup

Correct a few grammar issues in gitrepository-layout.txt and also
rewords a few sections for clarity.

Remove references to using http-fetch without -a to create a broken
repository.

Mark a few areas of the repository structure as legacy.

Signed-off-by: Ben Walton <bwalton@artsci.utoronto.ca>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Update draft release notes to 1.7.7Junio C Hamano Tue, 23 Aug 2011 22:43:38 +0000 (15:43 -0700)

Update draft release notes to 1.7.7

Merge branch 'rt/zlib-smaller-window'Junio C Hamano Tue, 23 Aug 2011 22:40:33 +0000 (15:40 -0700)

Merge branch 'rt/zlib-smaller-window'

* rt/zlib-smaller-window:
test: consolidate definition of $LF
Tolerate zlib deflation with window size < 32Kb

Merge branch 'jn/maint-test-return'Junio C Hamano Tue, 23 Aug 2011 22:35:26 +0000 (15:35 -0700)

Merge branch 'jn/maint-test-return'

* jn/maint-test-return:
t3900: do not reference numbered arguments from the test script
test: cope better with use of return for errors
test: simplify return value of test_run_

Merge branch 'cb/maint-ls-files-error-report'Junio C Hamano Tue, 23 Aug 2011 22:34:31 +0000 (15:34 -0700)

Merge branch 'cb/maint-ls-files-error-report'

* cb/maint-ls-files-error-report:
ls-files: fix pathspec display on error

Merge branch 'maint'Junio C Hamano Tue, 23 Aug 2011 22:29:08 +0000 (15:29 -0700)

Merge branch 'maint'

* maint:
Update draft release notes for 1.7.6.1

Update draft release notes for 1.7.6.1Junio C Hamano Tue, 23 Aug 2011 22:28:18 +0000 (15:28 -0700)

Update draft release notes for 1.7.6.1

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

Merge branch 'jc/maint-combined-diff-work-tree' into... Junio C Hamano Tue, 23 Aug 2011 22:27:30 +0000 (15:27 -0700)

Merge branch 'jc/maint-combined-diff-work-tree' into maint

* jc/maint-combined-diff-work-tree:
diff -c/--cc: do not mistake "resolved as deletion" as "use working tree"

Conflicts:
combine-diff.c

Merge branch 'cb/maint-exec-error-report' into maintJunio C Hamano Tue, 23 Aug 2011 22:20:06 +0000 (15:20 -0700)

Merge branch 'cb/maint-exec-error-report' into maint

* cb/maint-exec-error-report:
notice error exit from pager
error_routine: use parent's stderr if exec fails

Merge branch 'cb/maint-quiet-push' into maintJunio C Hamano Tue, 23 Aug 2011 22:19:45 +0000 (15:19 -0700)

Merge branch 'cb/maint-quiet-push' into maint

* cb/maint-quiet-push:
receive-pack: do not overstep command line argument array
propagate --quiet to send-pack/receive-pack

Conflicts:
Documentation/git-receive-pack.txt
Documentation/git-send-pack.txt

Merge branch 'jc/maint-smart-http-race-upload-pack... Junio C Hamano Tue, 23 Aug 2011 22:17:50 +0000 (15:17 -0700)

Merge branch 'jc/maint-smart-http-race-upload-pack' into maint

* jc/maint-smart-http-race-upload-pack:
helping smart-http/stateless-rpc fetch race