Code

git.git
13 years agoFix "add -u" that sometimes fails to resolve unmerged paths
Junio C Hamano [Thu, 21 Apr 2011 01:11:19 +0000 (18:11 -0700)]
Fix "add -u" that sometimes fails to resolve unmerged paths

"git add -u" updates the index with the updated contents from the working
tree by internally running "diff-files" to grab the set of paths that are
different from the index. Then it updates the index entries for the paths
that are modified in the working tree, and deletes the index entries for
the paths that are deleted in the working tree.

It ignored the output from the diff-files that indicated that a path is
unmerged.  For these paths, it instead relied on the fact that an unmerged
path is followed by the result of comparison between stage #2 (ours) and
the working tree, and used that to update or delete such a path when it is
used to record the resolution of a conflict.

As the result, when a path did not have stage #2 (e.g. "we deleted while
the other side added"), these unmerged stages were left behind, instead of
recording what the user resolved in the working tree.

Since we recently fixed "diff-files" to indicate if the corresponding path
exists on the working tree for an unmerged path, we do not have to rely on
the comparison with stage #2 anymore. We can instead tell the diff-files
not to compare with higher stages, and use the unmerged output to update
the index to reflect the state of the working tree.

The changes to the test vector in t2200 illustrates the nature of the bug
and the fix.  The test expected stage #1 and #3 entries be left behind,
but it was codifying the buggy behaviour.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agodiff-files: show unmerged entries correctly
Junio C Hamano [Fri, 22 Apr 2011 23:19:27 +0000 (16:19 -0700)]
diff-files: show unmerged entries correctly

Earlier, e9c8409 (diff-index --cached --raw: show tree entry on the LHS
for unmerged entries., 2007-01-05) taught the command to show the object
name and the mode from the entry coming from the tree side when comparing
a tree with an unmerged index.

This is a belated companion patch that teaches diff-files to show the mode
from the entry coming from the working tree side, when comparing an
unmerged index and the working tree.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agodiff: remove often unused parameters from diff_unmerge()
Junio C Hamano [Fri, 22 Apr 2011 23:05:58 +0000 (16:05 -0700)]
diff: remove often unused parameters from diff_unmerge()

e9c8409 (diff-index --cached --raw: show tree entry on the LHS for
unmerged entries., 2007-01-05) added a <mode, object name> pair as
parameters to this function, to store them in the pre-image side of an
unmerged file pair.  Now the function is fixed to return the filepair it
queued, we can make the caller on the special case codepath to do so.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agodiff.c: return filepair from diff_unmerge()
Junio C Hamano [Fri, 22 Apr 2011 22:55:55 +0000 (15:55 -0700)]
diff.c: return filepair from diff_unmerge()

The underlying diff_queue() returns diff_filepair so that the caller can
further add information to it, and the helper function diff_unmerge()
utilizes the feature itself, but does not expose it to its callers, which
was kind of selfish.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agotest: use $_z40 from test-lib
Junio C Hamano [Sun, 24 Apr 2011 05:34:13 +0000 (22:34 -0700)]
test: use $_z40 from test-lib

There is no need to duplicate the definition of $_z40 and $_x40 that
test-lib.sh supplies the test scripts.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agoGit 1.7.3 v1.7.3
Junio C Hamano [Sat, 18 Sep 2010 21:55:08 +0000 (14:55 -0700)]
Git 1.7.3

Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agoMerge branch 'js/ls-files-x-doc'
Junio C Hamano [Sat, 18 Sep 2010 21:46:44 +0000 (14:46 -0700)]
Merge branch 'js/ls-files-x-doc'

* js/ls-files-x-doc:
  ls-files documentation: reword for consistency
  git-ls-files.txt: clarify -x/--exclude option

Conflicts:
Documentation/git-ls-files.txt

14 years agogit-rebase--interactive.sh: replace cut with ${v%% *}
Chris Johnsen [Fri, 17 Sep 2010 21:42:51 +0000 (16:42 -0500)]
git-rebase--interactive.sh: replace cut with ${v%% *}

Some versions of cut do not cope well with lines that do not end in
an LF. In this case, we can completely avoid cut by using the
${var%% *} parameter expansion (suggested by Brandon Casey).

I found this problem when t3404's "avoid unnecessary reset" failed
due to the "rebase -i" not avoiding updating the tested timestamp.

On a Mac OS X 10.4.11 system:

    % printf '%s' 'foo bar' | /usr/bin/cut -d ' ' -f 1
    cut: stdin: Illegal byte sequence

Signed-off-by: Chris Johnsen <chris_johnsen@pobox.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agot/t7300: workaround ancient touch by rearranging arguments
Brandon Casey [Wed, 15 Sep 2010 20:58:22 +0000 (15:58 -0500)]
t/t7300: workaround ancient touch by rearranging arguments

The ancient touch on Solaris 7 thinks that a decimal number supplied as
the first argument specifies a date_time to give to the files specified by
the remaining arguments.  In this case, it fails to parse '1' as a proper
date_time and exits with a failure status.  Workaround this flaw by
rearranging the arguments supplied to touch so that a non-digit appears
first and touch will not be confused.

Signed-off-by: Brandon Casey <casey@nrlssc.navy.mil>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agoMerge branch 'bg/fix-t7003'
Junio C Hamano [Thu, 16 Sep 2010 14:43:41 +0000 (07:43 -0700)]
Merge branch 'bg/fix-t7003'

* bg/fix-t7003:
  t7003: Use test_commit instead of custom function

14 years agols-files documentation: reword for consistency
Junio C Hamano [Thu, 16 Sep 2010 00:34:20 +0000 (17:34 -0700)]
ls-files documentation: reword for consistency

Similar to descriptions of other options, state what -x does in imperative
mood.  Start sentences for -X and --exclude-per-directory options in
capital letters.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agogit-ls-files.txt: clarify -x/--exclude option
Jay Soffian [Wed, 15 Sep 2010 23:56:48 +0000 (19:56 -0400)]
git-ls-files.txt: clarify -x/--exclude option

Since b5227d8, -x/--exclude does not apply to cached files.
This is easy to miss unless you read the discussion in the
EXCLUDE PATTERNS section. Clarify that the option applies
to untracked files and direct the reader to EXCLUDE PATTERNS.

Signed-off-by: Jay Soffian <jaysoffian@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agoGit 1.7.3 rc2 v1.7.3-rc2
Junio C Hamano [Wed, 15 Sep 2010 19:47:37 +0000 (12:47 -0700)]
Git 1.7.3 rc2

14 years agoMerge branch 'dr/maint-ls-tree-prefix-recursion-fix'
Junio C Hamano [Wed, 15 Sep 2010 19:41:13 +0000 (12:41 -0700)]
Merge branch 'dr/maint-ls-tree-prefix-recursion-fix'

* dr/maint-ls-tree-prefix-recursion-fix:
  ls-tree $di $dir: do not mistakenly recurse into directories

14 years agoMerge branch 'os/fix-rebase-diff-no-prefix'
Junio C Hamano [Wed, 15 Sep 2010 19:40:33 +0000 (12:40 -0700)]
Merge branch 'os/fix-rebase-diff-no-prefix'

* os/fix-rebase-diff-no-prefix:
  Add --src/dst-prefix to git-formt-patch in git-rebase.sh

14 years agoMerge branch 'jl/fix-test'
Junio C Hamano [Wed, 15 Sep 2010 19:40:12 +0000 (12:40 -0700)]
Merge branch 'jl/fix-test'

* jl/fix-test:
  t1020: Get rid of 'cd "$HERE"' at the start of each test
  t2016 (checkout -p): add missing &&
  t1302 (core.repositoryversion): style tweaks
  t2105 (gitfile): add missing &&
  t1450 (fsck): remove dangling objects
  tests: subshell indentation stylefix
  Several tests: cd inside subshell instead of around

14 years agoMerge branch 'ch/filter-branch-deprecate-remap-to-ancestor'
Junio C Hamano [Wed, 15 Sep 2010 19:39:32 +0000 (12:39 -0700)]
Merge branch 'ch/filter-branch-deprecate-remap-to-ancestor'

* ch/filter-branch-deprecate-remap-to-ancestor:
  filter-branch: retire --remap-to-ancestor

14 years agoMerge branch 'ch/maint-cannot-create-bundle-error'
Junio C Hamano [Wed, 15 Sep 2010 19:39:22 +0000 (12:39 -0700)]
Merge branch 'ch/maint-cannot-create-bundle-error'

* ch/maint-cannot-create-bundle-error:
  bundle: detect if bundle file cannot be created

14 years agoMerge branch 'ks/recursive-rename-add-identical'
Junio C Hamano [Wed, 15 Sep 2010 19:39:12 +0000 (12:39 -0700)]
Merge branch 'ks/recursive-rename-add-identical'

* ks/recursive-rename-add-identical:
  RE: [PATCH] Avoid rename/add conflict when contents are identical

14 years agoMerge git://repo.or.cz/git-gui
Junio C Hamano [Wed, 15 Sep 2010 19:34:37 +0000 (12:34 -0700)]
Merge git://repo.or.cz/git-gui

* 'master' of git://repo.or.cz/git-gui:
  git-gui 0.13
  git-gui: avoid mis-encoding the copyright message on Windows.
  git-gui: Update Swedish translation (521t).
  git-gui: ensure correct application termination in git-gui--askpass
  git-gui: handle textconv filter on Windows and in development
  git-gui: use shell to launch textconv filter in "blame"
  git-gui: display error launching blame as a message box.
  git-gui: Make usage statement visible on Windows.

14 years agogit-gui 0.13 gitgui-0.13.0
Pat Thoyts [Tue, 14 Sep 2010 21:42:37 +0000 (22:42 +0100)]
git-gui 0.13

Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
14 years agogit-gui: avoid mis-encoding the copyright message on Windows.
Pat Thoyts [Mon, 13 Sep 2010 19:41:42 +0000 (20:41 +0100)]
git-gui: avoid mis-encoding the copyright message on Windows.

On Windows the tcl script file will use the system encoding and attempting
to convert the copyright mis-encodes the string. Instead, keep the message
as ASCII and substitute in the correct unicode character when running.

Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
14 years agogit-gui: Update Swedish translation (521t).
Peter Krefting [Sun, 12 Sep 2010 20:13:29 +0000 (21:13 +0100)]
git-gui: Update Swedish translation (521t).

Signed-off-by: Peter Krefting <peter@softwolves.pp.se>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
14 years agot7003: Use test_commit instead of custom function
Brian Gernhardt [Fri, 10 Sep 2010 22:06:36 +0000 (18:06 -0400)]
t7003: Use test_commit instead of custom function

t7003-filter-branch.sh had a make_commit() function that was identical
to test_commit() in test-lib.sh except that it used tr to create a
lowercase file name from the uppercase branch name instead of
appending ".t".

Not only is this unneeded code duplication, it also was something
simply waiting to fail on case-insensitive file systems.  So replace
all uses of make_commit with test_commit.

While we're editing the setup, chain it together with && so that
failures early in the sequence don't get lost and add a commit graph.

Signed-off-by: Brian Gernhardt <brian@gernhardtsoftware.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agoMerge branch 'maint'
Junio C Hamano [Sun, 12 Sep 2010 20:53:03 +0000 (13:53 -0700)]
Merge branch 'maint'

* maint:
  t3101: modernise style
  compat/nedmalloc: don't force NDEBUG on the rest of git

Conflicts:
Makefile

14 years agols-tree $di $dir: do not mistakenly recurse into directories
Junio C Hamano [Sat, 11 Sep 2010 18:47:09 +0000 (11:47 -0700)]
ls-tree $di $dir: do not mistakenly recurse into directories

When applying two pathspecs, one of which is named as a prefix to the
other, we mistakenly recursed into the shorter one.

Noticed and fixed by David Reis.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agot3101: modernise style
Junio C Hamano [Sat, 11 Sep 2010 17:53:29 +0000 (10:53 -0700)]
t3101: modernise style

Also add a few " &&" cascade that were missing.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agovcs-svn: Fix some printf format compiler warnings
Ramsay Jones [Thu, 9 Sep 2010 17:24:06 +0000 (18:24 +0100)]
vcs-svn: Fix some printf format compiler warnings

In particular, on systems that define uint32_t as an unsigned long,
gcc complains as follows:

      CC vcs-svn/fast_export.o
  vcs-svn/fast_export.c: In function `fast_export_modify':
  vcs-svn/fast_export.c:28: warning: unsigned int format, uint32_t arg (arg 2)
  vcs-svn/fast_export.c:28: warning: int format, uint32_t arg (arg 3)
  vcs-svn/fast_export.c: In function `fast_export_commit':
  vcs-svn/fast_export.c:42: warning: int format, uint32_t arg (arg 5)
  vcs-svn/fast_export.c:62: warning: int format, uint32_t arg (arg 2)
  vcs-svn/fast_export.c: In function `fast_export_blob':
  vcs-svn/fast_export.c:72: warning: int format, uint32_t arg (arg 2)
  vcs-svn/fast_export.c:72: warning: int format, uint32_t arg (arg 3)
      CC vcs-svn/svndump.o
  vcs-svn/svndump.c: In function `svndump_read':
  vcs-svn/svndump.c:260: warning: int format, uint32_t arg (arg 3)

In order to suppress the warnings we use the C99 format specifier
macros PRIo32 and PRIu32 from <inttypes.h>.

Signed-off-by: Ramsay Jones <ramsay@ramsay1.demon.co.uk>
Acked-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agocompat/nedmalloc: don't force NDEBUG on the rest of git
René Scharfe [Sat, 11 Sep 2010 09:59:18 +0000 (11:59 +0200)]
compat/nedmalloc: don't force NDEBUG on the rest of git

Define the nedmalloc feature configuration macros for nedmalloc.o, only.
This keeps assert(3) working for the rest of the git source; it was
turned off for nedmalloc users before by defining NDEBUG globally.

Also remove -DUSE_NED_ALLOCATOR as this macro isn't used anywhere.

Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agoGit 1.7.3 rc1 v1.7.3-rc1
Junio C Hamano [Fri, 10 Sep 2010 18:55:55 +0000 (11:55 -0700)]
Git 1.7.3 rc1

Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agoMerge branch 'np/relnotes-in-subdir'
Junio C Hamano [Fri, 10 Sep 2010 18:54:58 +0000 (11:54 -0700)]
Merge branch 'np/relnotes-in-subdir'

* np/relnotes-in-subdir:
  install-webdoc: keep installed RelNotes-*.txt
  Documentation: move RelNotes into a directory of their own

14 years agoPrepare for 1.7.3 rc1
Junio C Hamano [Fri, 10 Sep 2010 18:54:34 +0000 (11:54 -0700)]
Prepare for 1.7.3 rc1

14 years agoMerge branch 'maint'
Junio C Hamano [Fri, 10 Sep 2010 16:39:08 +0000 (09:39 -0700)]
Merge branch 'maint'

* maint:
  config.txt: fix placement of diff.noprefix

14 years agoconfig.txt: fix placement of diff.noprefix
Mark Lodato [Fri, 10 Sep 2010 01:39:37 +0000 (21:39 -0400)]
config.txt: fix placement of diff.noprefix

In git-config(1), diff.noprefix was placed in between
diff.mnemonicprefix and the list of mnemonic prefixes, which is
obviously incorrect and very confusing to readers.  Now, it is located
after the end of the explanation of mnemonicprefix, which makes much
more sense.

Signed-off-by: Mark Lodato <lodatom@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agot/t4018: avoid two unnecessary sub-shell invocations
Brandon Casey [Fri, 10 Sep 2010 16:13:38 +0000 (11:13 -0500)]
t/t4018: avoid two unnecessary sub-shell invocations

Signed-off-by: Brandon Casey <casey@nrlssc.navy.mil>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agoMerge branch 'maint'
Junio C Hamano [Fri, 10 Sep 2010 00:29:40 +0000 (17:29 -0700)]
Merge branch 'maint'

* maint:
  xdiff-interface.c: always trim trailing space from xfuncname matches
  diff.c: call regfree to free memory allocated by regcomp when necessary

14 years agot/t4018: test whether the word_regex patterns compile
Brandon Casey [Thu, 9 Sep 2010 19:02:47 +0000 (14:02 -0500)]
t/t4018: test whether the word_regex patterns compile

Previously (e3bf5e43), a test was added to test whether the builtin
xfuncname regular expressions could be compiled without error by regcomp.
Let's do the same for the word_regex patterns.  This should help catch any
cross-platform incompatibilities that exist between the pattern creator's
system and the various platforms that the test suite is commonly run on.

Signed-off-by: Brandon Casey <casey@nrlssc.navy.mil>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agoxdiff-interface.c: always trim trailing space from xfuncname matches
Brandon Casey [Thu, 9 Sep 2010 19:02:46 +0000 (14:02 -0500)]
xdiff-interface.c: always trim trailing space from xfuncname matches

Generally, trailing space is removed from the string matched by the
xfuncname patterns.  The exception is when the matched string exceeds the
length of the fixed-size buffer that it will be copied in to.  But, a
string that exceeds the buffer can still contain trailing space in the
portion of the string that will be copied into the buffer.  So, simplify
this code slightly, and just perform the trailing space removal always.

Signed-off-by: Brandon Casey <casey@nrlssc.navy.mil>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agodiff.c: call regfree to free memory allocated by regcomp when necessary
Brandon Casey [Thu, 9 Sep 2010 19:02:45 +0000 (14:02 -0500)]
diff.c: call regfree to free memory allocated by regcomp when necessary

Signed-off-by: Brandon Casey <casey@nrlssc.navy.mil>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agot/t5510-fetch.sh: improve testing with explicit URL and merge spec
Brandon Casey [Thu, 9 Sep 2010 18:56:37 +0000 (13:56 -0500)]
t/t5510-fetch.sh: improve testing with explicit URL and merge spec

Commit 6106ce46 introduced a test to demonstrate fetch's failure to
retrieve any objects or update FETCH_HEAD when it was supplied a repository
URL and the current branch had a configured merge spec.  This commit
expands the original test based on comments from Junio Hamano.  In addition
to actually verifying that the fetch updates FETCH_HEAD correctly, and does
not update the current branch, two more tests are added to ensure that the
merge configuration is ignored even when the supplied URL matches the URL
of the remote configured for the branch.

Signed-off-by: Brandon Casey <casey@nrlssc.navy.mil>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agobuiltin/fetch.c: comment that branch->remote_name is usable when has_merge
Brandon Casey [Thu, 9 Sep 2010 18:56:36 +0000 (13:56 -0500)]
builtin/fetch.c: comment that branch->remote_name is usable when has_merge

Save future readers the trouble of tracing code to determine that the two
uses of branch->remote_name are safe when has_merge is set, by adding a
comment explaining that it is so.

Signed-off-by: Brandon Casey <casey@nrlssc.navy.mil>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agoMakefile: use compat regex on IRIX 6.5
Brandon Casey [Thu, 9 Sep 2010 19:15:58 +0000 (14:15 -0500)]
Makefile: use compat regex on IRIX 6.5

The IRIX 6.5 regex.h header file defines REG_STARTEND, but the feature does
not appear to work.  Since REG_STARTEND is required for proper functioning
of git-grep, set NO_REGEX and use the alternative regex libraries in compat/

Signed-off-by: Brandon Casey <casey@nrlssc.navy.mil>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agot/t7008: workaround broken handling of \000 by printf on IRIX
Brandon Casey [Thu, 9 Sep 2010 19:15:57 +0000 (14:15 -0500)]
t/t7008: workaround broken handling of \000 by printf on IRIX

On IRIX 6.5, the printf utility in /usr/bin does not appear to handle the
\ddd notation according to POSIX.  This printf appears to halt processing
of the string argument and ignore any additional characters in the string.
Work around this flaw by replacing the \000's with 'Q' and using the
q_to_nul helper function provided by test-lib.sh

This problem with printf is not apparent when using the Bash shell since
Bash implements a POSIX compatible printf function internally.

Signed-off-by: Brandon Casey <casey@nrlssc.navy.mil>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agoAdd --src/dst-prefix to git-formt-patch in git-rebase.sh
Oded Shimon [Thu, 9 Sep 2010 18:49:51 +0000 (21:49 +0300)]
Add --src/dst-prefix to git-formt-patch in git-rebase.sh

For the case of "diff.noprefix" in git-config, git-format-patch should
still output diff with standard prefixes for git-am

Signed-off-by: Oded Shimon <ods15@ods15.dyndns.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agoinstall-webdoc: keep installed RelNotes-*.txt
Junio C Hamano [Thu, 9 Sep 2010 23:17:59 +0000 (16:17 -0700)]
install-webdoc: keep installed RelNotes-*.txt

Otherwise URLs in the wild that point at older release notes will become
dangling.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agot1020: Get rid of 'cd "$HERE"' at the start of each test
Jens Lehmann [Tue, 7 Sep 2010 10:29:20 +0000 (12:29 +0200)]
t1020: Get rid of 'cd "$HERE"' at the start of each test

To achieve that, all cd commands which weren't inside a subshell had to
be put into a new one.

Signed-off-by: Jens Lehmann <Jens.Lehmann@web.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agot2016 (checkout -p): add missing &&
Jonathan Nieder [Tue, 7 Sep 2010 08:22:53 +0000 (03:22 -0500)]
t2016 (checkout -p): add missing &&

Although the set_state command is not likely to fail, it is best to
stay in the habit of checking for failures.

Cc: Thomas Rast <trast@student.ethz.ch>
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agot1302 (core.repositoryversion): style tweaks
Jonathan Nieder [Tue, 7 Sep 2010 01:52:27 +0000 (20:52 -0500)]
t1302 (core.repositoryversion): style tweaks

This test is from 2007, which is late enough for the style to be
recognizably modern but still a while ago.  Freshen it up to
follow new best practices:

 - guard setup commands with test_expect_setup, so errors at
   that stage can be caught;
 - use <<\EOF in preference to <<EOF, to save reviewers the
   trouble of looking for variable interpolations;
 - use test_cmp instead of test "$foo" = "$bar", for better
   output with -v on failure;
 - indent commands in subshells and let them span multiple lines;
 - combine the two "gitdir required mode" tests that do not make
   as much sense alone.

Cc: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agot2105 (gitfile): add missing &&
Jonathan Nieder [Tue, 7 Sep 2010 01:49:10 +0000 (20:49 -0500)]
t2105 (gitfile): add missing &&

Make sure early failures are not masked by later successes.

Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Acked-by: Brad King <brad.king@kitware.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agot1450 (fsck): remove dangling objects
Jonathan Nieder [Tue, 7 Sep 2010 01:47:07 +0000 (20:47 -0500)]
t1450 (fsck): remove dangling objects

The fsck test is generally careful to remove the corrupt objects
it inserts, but dangling objects are left behind due to some typos
and omissions.  It is better to clean up more completely, to
simplify the addition of later tests.  So:

 - guard setup and cleanup with test_expect_success to catch
   typos and errors;
 - check both stdout and stderr when checking for empty fsck
   output;
 - use test_cmp empty file in place of test $(wc -l <file) = 0,
   for better debugging output when running tests with -v;
 - add a remove_object () helper and use it to replace broken
   object removal code that forgot about the fanout in
   .git/objects;
 - disable gc.auto, to avoid tripping up object removal if the
   number of objects ever reaches that threshold.
 - use test_when_finished to ensure cleanup tasks are run and
   succeed when tests fail;
 - add a new final test that no breakage or dangling objects
   was left behind.

While at it, add a brief description to test_description of the
history that is expected to persist between tests.

Part of a campaign to clean up subshell usage in tests.

Cc: Thomas Rast <trast@student.ethz.ch>
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agotests: subshell indentation stylefix
Jonathan Nieder [Tue, 7 Sep 2010 01:42:54 +0000 (20:42 -0500)]
tests: subshell indentation stylefix

Format the subshells introduced by the previous patch (Several tests:
cd inside subshell instead of around, 2010-09-06) like so:

(
cd subdir &&
...
) &&

This is generally easier to read and has the nice side-effect that
this patch will show what commands are used in the subshell, making
it easier to check for lost environment variables and similar
behavior changes.

Cc: Jens Lehmann <Jens.Lehmann@web.de>
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agoMerge branch 'tf/cleanup-builtin-help-headers'
Junio C Hamano [Wed, 8 Sep 2010 16:17:01 +0000 (09:17 -0700)]
Merge branch 'tf/cleanup-builtin-help-headers'

* tf/cleanup-builtin-help-headers:
  builtin.h: Move two functions definitions to help.h.

14 years agoMerge branch 'jk/test-must-fail-missing'
Junio C Hamano [Wed, 8 Sep 2010 16:17:01 +0000 (09:17 -0700)]
Merge branch 'jk/test-must-fail-missing'

* jk/test-must-fail-missing:
  tests: make test_might_fail fail on missing commands
  tests: make test_might_fail more verbose
  tests: make test_must_fail fail on missing commands
  tests: make test_must_fail more verbose

14 years agoMerge branch 'jh/error-removing-missing-note'
Junio C Hamano [Wed, 8 Sep 2010 16:17:01 +0000 (09:17 -0700)]
Merge branch 'jh/error-removing-missing-note'

* jh/error-removing-missing-note:
  notes: Don't create (empty) commit when removing non-existing notes

14 years agoMerge branch 'kf/askpass-config'
Junio C Hamano [Wed, 8 Sep 2010 16:17:01 +0000 (09:17 -0700)]
Merge branch 'kf/askpass-config'

* kf/askpass-config:
  Extend documentation of core.askpass and GIT_ASKPASS.
  Allow core.askpass to override SSH_ASKPASS.
  Add a new option 'core.askpass'.

14 years agoMerge branch 'bc/maint-fetch-url-only'
Junio C Hamano [Wed, 8 Sep 2010 16:17:00 +0000 (09:17 -0700)]
Merge branch 'bc/maint-fetch-url-only'

* bc/maint-fetch-url-only:
  builtin/fetch.c: ignore merge config when not fetching from branch's remote
  t/t5510: demonstrate failure to fetch when current branch has merge ref

14 years agoMerge branch 'jk/maint-pass-c-config-in-env'
Junio C Hamano [Wed, 8 Sep 2010 16:17:00 +0000 (09:17 -0700)]
Merge branch 'jk/maint-pass-c-config-in-env'

* jk/maint-pass-c-config-in-env:
  do not pass "git -c foo=bar" params to transport helpers
  pass "git -c foo=bar" params through environment

14 years agoMerge branch 'en/d-f-conflict-fix'
Junio C Hamano [Wed, 8 Sep 2010 15:54:01 +0000 (08:54 -0700)]
Merge branch 'en/d-f-conflict-fix'

* en/d-f-conflict-fix:
  fast-export: ensure that a renamed file is printed after all references

14 years agofast-export: ensure that a renamed file is printed after all references
Johannes Sixt [Tue, 7 Sep 2010 19:33:02 +0000 (21:33 +0200)]
fast-export: ensure that a renamed file is printed after all references

t9350 sets up a commit where a file is both copied and renamed. The output
of fast-export for this commit should look like this:

  author ...
  committer ...
  from :19
  C "file2" "file4"
  R "file2" "file5"

The order of the two modification lines is derived from the result that
the diff machinery produces.

060df62 (fast-export: Fix output order of D/F changes) inserted a qsort
call that modifies the order of the diff result. Unfortunately, qsort need
not be stable. Therefore, it is possible that the 'R' line appears before
the 'C' line and the resulting fast-import stream is incorrect.

Fix it by forcing that the rename entry is printed after all other
modification lines with the same file name.

Signed-off-by: Johannes Sixt <j6t@kdbg.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agoDocumentation: move RelNotes into a directory of their own
Nicolas Pitre [Tue, 7 Sep 2010 00:29:57 +0000 (20:29 -0400)]
Documentation: move RelNotes into a directory of their own

There are 108 of them already.  That's a bit more than one third of
all the files in the Documentation directory already, and still growing.

Signed-off-by: Nicolas Pitre <nico@fluxnic.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agoMerge branch 'maint'
Junio C Hamano [Tue, 7 Sep 2010 00:40:18 +0000 (17:40 -0700)]
Merge branch 'maint'

* maint:
  revert: Fix trivial comment style issue
  cache_tree_free: Fix small memory leak

Conflicts:
builtin/revert.c

14 years agorevert: Fix trivial comment style issue
Elijah Newren [Mon, 6 Sep 2010 21:53:24 +0000 (15:53 -0600)]
revert: Fix trivial comment style issue

Signed-off-by: Elijah Newren <newren@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agocache_tree_free: Fix small memory leak
Elijah Newren [Mon, 6 Sep 2010 21:40:16 +0000 (15:40 -0600)]
cache_tree_free: Fix small memory leak

Signed-off-by: Elijah Newren <newren@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agoMerge branch 'jh/clean-exclude'
Junio C Hamano [Mon, 6 Sep 2010 23:57:05 +0000 (16:57 -0700)]
Merge branch 'jh/clean-exclude'

* jh/clean-exclude:
  builtin/clean.c: Use STRING_LIST_INIT_NODUP.

14 years agobuiltin/clean.c: Use STRING_LIST_INIT_NODUP.
Thiago Farina [Mon, 6 Sep 2010 23:32:55 +0000 (20:32 -0300)]
builtin/clean.c: Use STRING_LIST_INIT_NODUP.

Signed-off-by: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agoMerge branch 'jl/maint-fix-test'
Junio C Hamano [Mon, 6 Sep 2010 23:46:36 +0000 (16:46 -0700)]
Merge branch 'jl/maint-fix-test'

* jl/maint-fix-test:
  Several tests: cd inside subshell instead of around

Conflicts:
t/t9600-cvsimport.sh

14 years agoSeveral tests: cd inside subshell instead of around
Jens Lehmann [Mon, 6 Sep 2010 18:39:54 +0000 (20:39 +0200)]
Several tests: cd inside subshell instead of around

Fixed all places where it was a straightforward change from cd'ing into a
directory and back via "cd .." to a cd inside a subshell.

Found these places with "git grep -w "cd \.\.".

Signed-off-by: Jens Lehmann <Jens.Lehmann@web.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agot3404 & t7508: cd inside subshell instead of around
Jens Lehmann [Mon, 6 Sep 2010 18:41:06 +0000 (20:41 +0200)]
t3404 & t7508: cd inside subshell instead of around

Fixed all places where it was a straightforward change from cd'ing into a
directory and back via "cd .." to a cd inside a subshell.

Found these places with "git grep -w "cd \.\.".

Signed-off-by: Jens Lehmann <Jens.Lehmann@web.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agoMerge branch 'maint' v1.7.3-rc0
Junio C Hamano [Mon, 6 Sep 2010 07:12:04 +0000 (00:12 -0700)]
Merge branch 'maint'

* maint:
  tag.c: whitespace breakages fix
  Fix whitespace issue in object.c
  t5505: add missing &&

14 years agoMerge branch 'xx/trivial' into maint
Junio C Hamano [Mon, 6 Sep 2010 07:11:59 +0000 (00:11 -0700)]
Merge branch 'xx/trivial' into maint

* xx/trivial:
  tag.c: whitespace breakages fix
  Fix whitespace issue in object.c
  t5505: add missing &&

14 years agotag.c: whitespace breakages fix
Junio C Hamano [Mon, 6 Sep 2010 05:32:05 +0000 (22:32 -0700)]
tag.c: whitespace breakages fix

Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agoFix whitespace issue in object.c
Jared Hance [Sun, 5 Sep 2010 19:36:33 +0000 (15:36 -0400)]
Fix whitespace issue in object.c

Change some expanded tabs (spaces) to tabs in object.c.

Signed-off-by: Jared Hance <jaredhance@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agot5505: add missing &&
Jens Lehmann [Sun, 5 Sep 2010 12:56:11 +0000 (14:56 +0200)]
t5505: add missing &&

Signed-off-by: Jens Lehmann <Jens.Lehmann@web.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agoMerge branch 'jl/submodule-ignore-diff'
Junio C Hamano [Sat, 4 Sep 2010 15:17:09 +0000 (08:17 -0700)]
Merge branch 'jl/submodule-ignore-diff'

* jl/submodule-ignore-diff:
  checkout: Use submodule.*.ignore settings from .git/config and .gitmodules
  checkout: Add test for diff.ignoreSubmodules
  checkout: respect diff.ignoreSubmodules setting

Conflicts:
builtin/checkout.c

14 years agoMerge branch 'ab/test-2'
Junio C Hamano [Sat, 4 Sep 2010 15:15:36 +0000 (08:15 -0700)]
Merge branch 'ab/test-2'

* ab/test-2: (51 commits)
  tests: factor HOME=$(pwd) in test-lib.sh
  test-lib: use subshell instead of cd $new && .. && cd $old
  tests: simplify "missing PREREQ" message
  t/t0000-basic.sh: Run the passing TODO test inside its own test-lib
  test-lib: Allow overriding of TEST_DIRECTORY
  test-lib: Use "$GIT_BUILD_DIR" instead of "$TEST_DIRECTORY"/../
  test-lib: Use $TEST_DIRECTORY or $GIT_BUILD_DIR instead of $(pwd) and ../
  test: Introduce $GIT_BUILD_DIR
  cvs tests: do not touch test CVS repositories shipped with source
  t/t9602-cvsimport-branches-tags.sh: Add a PERL prerequisite
  t/t9601-cvsimport-vendor-branch.sh: Add a PERL prerequisite
  t/t7105-reset-patch.sh: Add a PERL prerequisite
  t/t9001-send-email.sh: convert setup code to tests
  t/t9001-send-email.sh: change from skip_all=* to prereq skip
  t/t9001-send-email.sh: Remove needless PROG=* assignment
  t/t9600-cvsimport.sh: change from skip_all=* to prereq skip
  lib-patch-mode tests: change from skip_all=* to prereq skip
  t/t3701-add-interactive.sh: change from skip_all=* to prereq skip
  tests: Move FILEMODE prerequisite to lib-prereq-FILEMODE.sh
  t/Makefile: Create test-results dir for smoke target
  ...

Conflicts:
t/t6035-merge-dir-to-symlink.sh

14 years agoMerge branch 'js/detached-stash'
Junio C Hamano [Sat, 4 Sep 2010 05:45:58 +0000 (22:45 -0700)]
Merge branch 'js/detached-stash'

* js/detached-stash:
  t3903: fix broken test_must_fail calls
  detached-stash: update Documentation
  detached-stash: tests of git stash with stash-like arguments
  detached-stash: simplify git stash show
  detached-stash: simplify git stash branch
  detached-stash: refactor git stash pop implementation
  detached-stash: simplify stash_drop
  detached-stash: simplify stash_apply
  detached-stash: work around git rev-parse failure to detect bad log refs
  detached-stash: introduce parse_flags_and_revs function

14 years agoMerge branch 'js/maint-reflog-beyond-horizon'
Junio C Hamano [Sat, 4 Sep 2010 05:24:29 +0000 (22:24 -0700)]
Merge branch 'js/maint-reflog-beyond-horizon'

* js/maint-reflog-beyond-horizon:
  t1503: fix broken test_must_fail calls
  rev-parse: tests git rev-parse --verify master@{n}, for various n
  sha1_name.c: use warning in preference to fprintf(stderr
  rev-parse: exit with non-zero status if ref@{n} is not valid.

14 years agoMerge branch 'dg/local-mod-error-messages'
Junio C Hamano [Sat, 4 Sep 2010 05:23:49 +0000 (22:23 -0700)]
Merge branch 'dg/local-mod-error-messages'

* dg/local-mod-error-messages:
  t7609-merge-co-error-msgs: test non-fast forward case too.
  Move "show_all_errors = 1" to setup_unpack_trees_porcelain()
  setup_unpack_trees_porcelain: take the whole options struct as parameter
  Move set_porcelain_error_msgs to unpack-trees.c and rename it

Conflicts:
merge-recursive.c

14 years agoMerge branch 'nd/maint-fix-replace'
Junio C Hamano [Sat, 4 Sep 2010 05:23:13 +0000 (22:23 -0700)]
Merge branch 'nd/maint-fix-replace'

* nd/maint-fix-replace:
  parse_object: pass on the original sha1, not the replaced one

14 years agoparse_object: pass on the original sha1, not the replaced one
Nguyễn Thái Ngọc Duy [Fri, 3 Sep 2010 20:51:53 +0000 (22:51 +0200)]
parse_object: pass on the original sha1, not the replaced one

Commit 0e87c36 (object: call "check_sha1_signature" with the
replacement sha1) changed the first argument passed to
parse_object_buffer() from "sha1" to "repl". With that change,
the returned obj pointer has the replacement SHA1 in obj->sha1,
not the original one.

But when using lookup_commit() and then parse_commit() on a
commit, we get an object pointer with the original sha1, but
the commit content comes from the replacement commit.

So the result we get from using parse_object() is different
from the we get from using lookup_commit() followed by
parse_commit().

It looks much simpler and safer to fix this inconsistency by
passing "sha1" to parse_object_bufer() instead of "repl".

The commit comment should be used to tell the the replacement
commit is replacing another commit and why. So it should be
easy to see that we have a replacement commit instead of an
original one.

And it is not a problem if the content of the commit is not
consistent with the sha1 as cat-file piped to hash-object can
be used to see the difference.

Signed-off-by: Christian Couder <chriscool@tuxfamily.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agoRE: [PATCH] Avoid rename/add conflict when contents are identical
Schalk, Ken [Wed, 1 Sep 2010 20:15:32 +0000 (13:15 -0700)]
RE: [PATCH] Avoid rename/add conflict when contents are identical

>Due to this this (and maybe all the tests) need to depend on the
>SYMLINKS prereq.

Here's a third attempt with no use of symlinks in the test:

Skip the entire rename/add conflict case if the file added on the
other branch has the same contents as the file being renamed.  This
avoids giving the user an extra copy of the same file and presenting a
conflict that is confusing and pointless.

A simple test of this case has been added in
t/t3030-merge-recursive.sh.

Signed-off-by: Ken Schalk <ken.schalk@intel.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agoMerge branch 'ab/compat-regex'
Junio C Hamano [Fri, 3 Sep 2010 16:43:45 +0000 (09:43 -0700)]
Merge branch 'ab/compat-regex'

* ab/compat-regex:
  Fix compat/regex ANSIfication on MinGW
  autoconf: regex library detection typofix
  autoconf: don't use platform regex if it lacks REG_STARTEND
  t/t7008-grep-binary.sh: un-TODO a test that needs REG_STARTEND
  compat/regex: get rid of old-style definition
  compat/regex: define out variables only used under RE_ENABLE_I18N
  Change regerror() declaration from K&R style to ANSI C (C89)
  compat/regex: get the gawk regex engine to compile within git
  compat/regex: use the regex engine from gawk for compat

Conflicts:
compat/regex/regex.c

14 years agoMerge branch 'nd/clone-depth-zero'
Junio C Hamano [Fri, 3 Sep 2010 16:43:45 +0000 (09:43 -0700)]
Merge branch 'nd/clone-depth-zero'

* nd/clone-depth-zero:
  clone: warn users --depth is ignored in local clones

14 years agoMerge branch 'jn/maint-doc-user-manual-html-doctype'
Junio C Hamano [Fri, 3 Sep 2010 16:43:44 +0000 (09:43 -0700)]
Merge branch 'jn/maint-doc-user-manual-html-doctype'

* jn/maint-doc-user-manual-html-doctype:
  docs: fix Makefile dependency for user manual
  Documentation: set a !DOCTYPE for user manual

14 years agoMerge branch 'cb/maint-mergetool-no-tty'
Junio C Hamano [Fri, 3 Sep 2010 16:43:44 +0000 (09:43 -0700)]
Merge branch 'cb/maint-mergetool-no-tty'

* cb/maint-mergetool-no-tty:
  mergetool: Remove explicit references to /dev/tty

Conflicts:
git-mergetool.sh

14 years agoMerge branch 'jn/apply-filename-with-sp'
Junio C Hamano [Fri, 3 Sep 2010 16:43:44 +0000 (09:43 -0700)]
Merge branch 'jn/apply-filename-with-sp'

* jn/apply-filename-with-sp:
  apply: handle traditional patches with space in filename
  tests: exercise "git apply" with weird filenames
  apply: split quoted filename handling into new function

14 years agoMerge branch 'jn/merge-custom-no-trivial'
Junio C Hamano [Fri, 3 Sep 2010 16:43:43 +0000 (09:43 -0700)]
Merge branch 'jn/merge-custom-no-trivial'

* jn/merge-custom-no-trivial:
  t7606: Avoid using head as a file name
  merge: let custom strategies intervene in trivial merges
  t7606 (merge-theirs): modernize style

14 years agoMerge branch 'jc/maint-doc-em-dash'
Junio C Hamano [Fri, 3 Sep 2010 16:43:42 +0000 (09:43 -0700)]
Merge branch 'jc/maint-doc-em-dash'

* jc/maint-doc-em-dash:
  Work around em-dash handling in newer AsciiDoc

14 years agoMerge branch 'mg/doc-bundle'
Junio C Hamano [Fri, 3 Sep 2010 16:43:42 +0000 (09:43 -0700)]
Merge branch 'mg/doc-bundle'

* mg/doc-bundle:
  git-bundle.txt: Clarify rev-list-args restrictions
  git-bundle.txt: whitespace cleanup
  git-bundle.txt: Cleanup

Conflicts:
Documentation/git-bundle.txt

14 years agoMerge branch 'jn/doc-backslash'
Junio C Hamano [Fri, 3 Sep 2010 16:43:42 +0000 (09:43 -0700)]
Merge branch 'jn/doc-backslash'

* jn/doc-backslash:
  Documentation: remove stray backslash in show-branch discussion
  Documentation: remove stray backslashes from "Fighting regressions" article
  Documentation: do not convert ... operator to ellipses
  Documentation: avoid stray backslash in user manual
  Documentation: avoid stray backslashes in core tutorial
  Documentation: remove stray backslashes in rev-parse manual
  Documentation: remove backslash before ~ in fast-import manual
  Documentation: remove stray backslash from "git bundle" manual
  Documentation/technical: avoid stray backslash in parse-options API docs
  Documentation: remove backslashes in manpage synopses
  Documentation: clarify quoting in gitignore docs
  Documentation: clarify quoting in "git rm" example
  Documentation: add missing quotes to "git grep" examples
  Documentation: clarify quoting in "git add" example
  Documentation: unbreak regex in show-ref manual
  Documentation: quoting trouble in "git rm" discussion
  Documentation: tweak description of log.date

14 years agoMerge branch 'jn/update-contrib-example-merge'
Junio C Hamano [Fri, 3 Sep 2010 16:43:42 +0000 (09:43 -0700)]
Merge branch 'jn/update-contrib-example-merge'

* jn/update-contrib-example-merge: (24 commits)
  merge script: learn --[no-]rerere-autoupdate
  merge script: notice @{-1} shorthand
  merge script: handle --no-ff --no-commit correctly
  merge script: --ff-only to disallow true merge
  merge script: handle many-way octopus
  merge script: handle -m --log correctly
  merge script: forbid merge -s index
  merge script: allow custom strategies
  merge script: merge -X<option>
  merge script: improve log message subject
  merge script: refuse to merge during merge
  merge script: tweak unmerged files message to match builtin
  merge script: --squash, --ff from unborn branch are errors
  fmt-merge-msg -m to override merge title
  merge-base --independent to print reduced parent list in a merge
  merge-base --octopus to mimic show-branch --merge-base
  Documentation: add a SEE ALSO section for merge-base
  t6200 (fmt-merge-msg): style nitpicks
  t6010 (merge-base): modernize style
  t7600 (merge): test merge from branch yet to be born
  ...

14 years agoMerge branch 'jn/merge-renormalize'
Junio C Hamano [Fri, 3 Sep 2010 16:43:41 +0000 (09:43 -0700)]
Merge branch 'jn/merge-renormalize'

* jn/merge-renormalize:
  merge-recursive --renormalize
  rerere: never renormalize
  rerere: migrate to parse-options API
  t4200 (rerere): modernize style
  ll-merge: let caller decide whether to renormalize
  ll-merge: make flag easier to populate
  Documentation/technical: document ll_merge
  merge-trees: let caller decide whether to renormalize
  merge-trees: push choice to renormalize away from low level
  t6038 (merge.renormalize): check that it can be turned off
  t6038 (merge.renormalize): try checkout -m and cherry-pick
  t6038 (merge.renormalize): style nitpicks
  Don't expand CRLFs when normalizing text during merge
  Try normalizing files to avoid delete/modify conflicts when merging
  Avoid conflicts when merging branches with mixed normalization

Conflicts:
builtin/rerere.c
t/t4200-rerere.sh

14 years agoSync with 1.7.2.3
Junio C Hamano [Fri, 3 Sep 2010 16:39:38 +0000 (09:39 -0700)]
Sync with 1.7.2.3

Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agoGit 1.7.2.3 v1.7.2.3
Junio C Hamano [Fri, 3 Sep 2010 16:38:53 +0000 (09:38 -0700)]
Git 1.7.2.3

Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agobuiltin/merge_recursive.c: Add an usage string and make use of it.
Thiago Farina [Mon, 30 Aug 2010 03:30:22 +0000 (00:30 -0300)]
builtin/merge_recursive.c: Add an usage string and make use of it.

This improves the usage output by adding builtin_merge_recursive_usage string
that follows the same pattern used by the other builtin commands.

The previous output for git merger-recursive was:
usage: merge-recursive <base>... -- <head> <remote> ...

Now the output is:
usage: git merge-recursive <base>... -- <head> <remote> ...

Since cmd_merge_recursive is used to handle four different commands we need
the %s in the usage string, so the following example:

$ git merge-subtree -h

Will output:
usage: git merge-subtree <base>... -- <head> <remote> ...

Signed-off-by: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agot7406 & t7407: add missing && at end of lines
Jens Lehmann [Wed, 1 Sep 2010 21:28:27 +0000 (23:28 +0200)]
t7406 & t7407: add missing && at end of lines

Signed-off-by: Jens Lehmann <Jens.Lehmann@web.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agot7405: cd inside subshell instead of around
Jens Lehmann [Wed, 1 Sep 2010 21:01:49 +0000 (23:01 +0200)]
t7405: cd inside subshell instead of around

Instead of using `cd dir && (...) && cd..` use `(cd dir && ...)`

This ensures that the test doesn't get caught in the subdirectory if there
is an error in the subshell.

Signed-off-by: Jens Lehmann <Jens.Lehmann@web.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agot7609-merge-co-error-msgs: test non-fast forward case too.
Matthieu Moy [Fri, 3 Sep 2010 15:25:33 +0000 (17:25 +0200)]
t7609-merge-co-error-msgs: test non-fast forward case too.

Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agoMove "show_all_errors = 1" to setup_unpack_trees_porcelain()
Matthieu Moy [Thu, 2 Sep 2010 16:08:15 +0000 (18:08 +0200)]
Move "show_all_errors = 1" to setup_unpack_trees_porcelain()

Not only this makes the code clearer since setting up the porcelain error
message is meant to work with show_all_errors, but this fixes a call to
setup_unpack_trees_porcelain() in git_merge_trees() which did not set
show_all_errors.

add_rejected_path() used to double-check whether it was running in
plumbing mode. This check was ineffective since it was setting
show_all_errors too late for traverse_trees() to see it, and is made
useless by this patch. Remove it.

Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agosetup_unpack_trees_porcelain: take the whole options struct as parameter
Matthieu Moy [Thu, 2 Sep 2010 11:57:34 +0000 (13:57 +0200)]
setup_unpack_trees_porcelain: take the whole options struct as parameter

This is a preparation patch to let setup_unpack_trees_porcelain set
show_all_errors itself.

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