1
0
Fork 0
mirror of https://github.com/git/git.git synced 2024-11-18 23:14:51 +01:00
Commit graph

2737 commits

Author SHA1 Message Date
Junio C Hamano
1c64e79a62 mktree --missing: allow missing objects
We need to allow input lines that point at objects that we do not
have when dealing with submodule entries anyway.  This adds an explicit
option to allow missing objects of other types, to be consistent with
the use of --info-only option to the update-index command and --missing-ok
option to the write-tree command.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-05-10 17:31:01 -07:00
Junio C Hamano
801cfae8fd t1010: add mktree test
So far mktree (which has always been a quick hack) had no test.
At least give it a bit of test coverage.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-05-10 12:41:35 -07:00
Nguyễn Thái Ngọc Duy
c5ae7cb6d9 t4029: use sh instead of bash
Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-05-06 18:16:26 -07:00
Brandon Casey
5e16488edc t4200: convert sed expression which operates on non-text file to perl
POSIX only requires sed to work on text files and MERGE_RR is not a text
file.  Some versions of sed complain that this file is not newline
terminated, and exit non-zero.  Use perl instead which does not have a
problem with it.

Signed-off-by: Brandon Casey <casey@nrlssc.navy.mil>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-05-06 16:43:29 -07:00
Brandon Casey
9eda0e980a t4200: remove two unnecessary lines
These two lines appear to be unnecessary.  They set variables which are not
used afterwards.  The primary motivation to remove them is that the sed
invocation exits non-zero for seds which require newline termination of
input files.

Signed-off-by: Brandon Casey <casey@nrlssc.navy.mil>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-05-06 16:43:28 -07:00
Brandon Casey
d8b69ecb4c t/annotate-tests.sh: avoid passing a non-newline terminated file to sed
Some versions of sed exit non-zero if the file they are supplied is not
newline terminated.  Solaris's /usr/xpg4/bin/sed is one such sed.  So
rework this test to avoid doing so.

This affects tests t8001-annotate.sh and t8002-blame.sh.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-05-06 11:50:44 -07:00
Brandon Casey
325fb15104 t4118: avoid sed invocation on file without terminating newline
Some versions of sed exit non-zero if the file they are supplied is not
newline terminated. Solaris's /usr/xpg4/bin/sed is one such sed.  In
this case the sed invocation can be avoided entirely since the resulting
file is equivalent to a previously created file.  So, just copy that file
into place instead.

Signed-off-by: Brandon Casey <casey@nrlssc.navy.mil>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-05-06 11:49:14 -07:00
Brandon Casey
723570469f t4118: add missing '&&'
Signed-off-by: Brandon Casey <casey@nrlssc.navy.mil>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-05-06 11:49:05 -07:00
Brandon Casey
0b05dc2b7e t8005: use egrep when extended regular expressions are required
Not all versions of grep understand backslashed extended regular
expressions.  Possibly only gnu grep does.

Signed-off-by: Brandon Casey <casey@nrlssc.navy.mil>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-05-06 11:48:58 -07:00
Junio C Hamano
8146f19762 Merge branch 'maint'
* maint:
  improve error message in config.c
  t4018-diff-funcname: add cpp xfuncname pattern to syntax test
  Work around BSD whose typeof(tv.tv_sec) != time_t
  git-am.txt: reword extra headers in message body
  git-am.txt: Use date or value instead of time or timestamp
  git-am.txt: add an 'a', say what 'it' is, simplify a sentence
  dir.c: Fix two minor grammatical errors in comments
  git-svn: fix a sloppy Getopt::Long usage
2009-05-05 22:52:17 -07:00
Brandon Casey
066e596abb t4018-diff-funcname: add cpp xfuncname pattern to syntax test
Signed-off-by: Brandon Casey <drafnel@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-05-05 22:49:02 -07:00
Junio C Hamano
c2eae0a5f6 Merge branch 'mk/maint-apply-swap' into maint
* mk/maint-apply-swap:
  tests: make test-apply-criss-cross-rename more robust
  builtin-apply: keep information about files to be deleted
  tests: test applying criss-cross rename patch
2009-05-03 15:02:52 -07:00
Junio C Hamano
d1c8c0c8c4 Merge branch 'maint'
* maint:
  diff -c -p: do not die on submodules

Conflicts:
	combine-diff.c
2009-04-29 16:50:31 -07:00
Junio C Hamano
0c44c94309 merge-recursive: do not die on a conflicting submodule
We cannot represent the 3-way conflicted state in the work tree
for these entries, but it is normal not to have commit objects
for them in our repository.  Just update the index and the life
will be good.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-29 16:50:21 -07:00
Junio C Hamano
a2dc04ba15 Merge branch 'maint-1.6.1' into maint
* maint-1.6.1:
  diff -c -p: do not die on submodules
2009-04-29 15:40:33 -07:00
Junio C Hamano
934747323c Merge branch 'maint-1.6.0' into maint-1.6.1
* maint-1.6.0:
  diff -c -p: do not die on submodules
2009-04-29 13:43:13 -07:00
Junio C Hamano
7dae8b21c2 diff -c -p: do not die on submodules
The combine diff logic knew only about blobs (and their checked-out form
in the work tree, either regular files or symlinks), and barfed when fed
submodules.  This "externalizes" gitlinks in the same way as the normal
patch generation codepath does (i.e. "Subproject commit Xxx\n") to fix the
issue.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-29 12:49:52 -07:00
Junio C Hamano
b79376cdf3 Merge branch 'maint'
* maint:
  grep: fix segfault when "git grep '('" is given
  Documentation: fix a grammatical error in api-builtin.txt
  builtin-merge: fix a typo in an error message
2009-04-28 00:46:39 -07:00
Junio C Hamano
2254da06a5 Merge branch 'maint-1.6.1' into maint
* maint-1.6.1:
  grep: fix segfault when "git grep '('" is given
  Documentation: fix a grammatical error in api-builtin.txt
  builtin-merge: fix a typo in an error message
2009-04-28 00:46:25 -07:00
Junio C Hamano
3e73cb2f48 Merge branch 'maint-1.6.0' into maint-1.6.1
* maint-1.6.0:
  grep: fix segfault when "git grep '('" is given
  Documentation: fix a grammatical error in api-builtin.txt
  builtin-merge: fix a typo in an error message
2009-04-28 00:46:20 -07:00
Linus Torvalds
c922b01f54 grep: fix segfault when "git grep '('" is given
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-27 17:28:18 -07:00
Johannes Schindelin
b9d622e711 t5701: do not get stuck in empty-push/
A test might happen to be the last one in the script, but other people
later may want to add more tests after your test is done.

Do not surprise them by going in a subdirectory to run a part of your test
and never coming out of it.  This fixes a162e78 in that respect.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-27 16:33:53 -07:00
Linus Torvalds
95110d75d9 t4202: fix typo
While I did a

	make -j64 test > ~/t.out

to check my previous patch (in case some test actually tested 'trustctime'
or something), I noticed this one. Somebody has speeling trouble:

	t4202-log.sh: line 345: test_expect_sucess: command not found

Fixed thus.

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-26 16:20:25 -07:00
Brandon Casey
1ef2d5a640 t7700-repack: repack -a now works properly, expect success from test
Since the recent rework of the object listing mechanism of
pack-objects/rev-list, git-repack now properly packs objects from alternate
repositories even when the local repository contains packs.

Signed-off-by: Brandon Casey <casey@nrlssc.navy.mil>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-25 08:54:18 -07:00
Brandon Casey
84eeb687de t9001: use older Getopt::Long boolean prefix '--no' rather than '--no-'
The '--no-thread' option is a Getopt::Long boolean option. The '--no-'
prefix (as in --no-thread) for boolean options is not supported in
Getopt::Long version 2.32 which was released with Perl 5.8.0. This version
only supports '--no' as in '--nothread'.  More recent versions of
Getopt::Long, such as version 2.34, support either prefix. So use the older
form in the tests.

Signed-off-by: Brandon Casey <casey@nrlssc.navy.mil>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-25 08:54:18 -07:00
Jeff King
a766829458 t7800: respect NO_PERL
Difftool is written in perl, so we don't build it if NO_PERL
is set.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-24 09:24:35 -07:00
Allan Caffee
a6c1a3827c graph API: fix a bug in the rendering of octopus merges
An off by one error was causing octopus merges with 3 parents to not be
rendered correctly.  This regression was introduced by 427fc5.

Signed-off-by: Allan Caffee <allan.caffee@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-22 17:49:56 -07:00
Allan Caffee
7b1d6269ee t4202-log: extend test coverage of graphing
Extend this test to cover the rendering of graphs with octopus merges
and pre_commit lines.

Signed-off-by: Allan Caffee <allan.caffee@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-22 17:48:22 -07:00
Michael J Gruber
3a0483281a test-lib.sh: Help test_create_repo() find the templates dir
Currently, test_create_repo() expects that templates can be found below
`pwd`/.. This assumption fails when tests are run against a git
installed somewhere else or test_create_repo() is called from
subdirectiories (several tests do this).
Therefore, use $TEST_DIRECTORY as introduced in 2d84e9fb and expect
templates to be present in $TEST_DIRECTORY/.. which should be the root
dir of the git checkout.

Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-21 09:49:04 -07:00
Junio C Hamano
0be9bc0f0a Merge branch 'mk/maint-apply-swap'
* mk/maint-apply-swap:
  tests: make test-apply-criss-cross-rename more robust
  builtin-apply: keep information about files to be deleted
  tests: test applying criss-cross rename patch

Conflicts:
	t/t4130-apply-criss-cross-rename.sh
2009-04-21 00:16:09 -07:00
Matthieu Moy
a162e78df0 clone: add test for push on an empty clone.
Commit 55f0566 (get_local_heads(): do not return random pointer if
there is no head, 2009-04-17) fixed a segfault for git push, this
patch adds a test-case to avoid future regressions.

Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-20 13:53:03 -07:00
Michał Kiedrowicz
f0583867e7 tests: make test-apply-criss-cross-rename more robust
I realized that this test does check if git-apply succeeds, but doesn't
tell if it applies patches correctly. So I added test_cmp to check it.

I also added a test which checks swapping three files.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-20 13:47:02 -07:00
Michał Kiedrowicz
e8141fcf54 builtin-apply: keep information about files to be deleted
Example correct diff generated by `diff -M -B' might look like this:

	diff --git a/file1 b/file2
	similarity index 100%
	rename from file1
	rename to file2
	diff --git a/file2 b/file1
	similarity index 100%
	rename from file2
	rename to file1

Information about removing `file2' comes after information about creation
of new `file2' (renamed from `file1'). Existing implementation isn't able to
apply such patch, because it has to know in advance which files will be
removed.

This patch populates fn_table with information about removal of files
before calling check_patch() for each patch to be applied.

Signed-off-by: Michał Kiedrowicz <michal.kiedrowicz@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-20 13:46:58 -07:00
Michał Kiedrowicz
1d49f0d1a1 tests: test applying criss-cross rename patch
Originally reported by Linus in $gmane/116198

Signed-off-by: Michał Kiedrowicz <michal.kiedrowicz@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-20 13:46:55 -07:00
Junio C Hamano
4f26c39806 Merge branch 'ef/maint-fast-export' into maint
* ef/maint-fast-export:
  builtin-fast-export.c: handle nested tags
  builtin-fast-export.c: fix crash on tagged trees
  builtin-fast-export.c: turn error into warning
  test-suite: adding a test for fast-export with tag variants
2009-04-19 12:40:17 -07:00
Junio C Hamano
5027acc4db Merge branch 'jc/maint-shared-literally' into maint
* jc/maint-shared-literally:
  Update docs on behaviour of 'core.sharedRepository' and 'git init --shared'
  t1301-shared-repo: fix forced modes test
2009-04-19 12:40:05 -07:00
Erik Faye-Lund
aadd44404b builtin-fast-export.c: handle nested tags
When tags that points to tags are passed to fast-export, an error is given,
saying "Tag [TAGNAME] points nowhere?". This fix calls parse_object() on the
object before referencing it's tag, to ensure the tag-info is fully initialized.
In addition, it inserts a comment to point out where nested tags are handled.
This is consistent with the comment for signed tags.

Signed-off-by: Erik Faye-Lund <kusmabite@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-19 12:29:26 -07:00
Erik Faye-Lund
426193c025 builtin-fast-export.c: fix crash on tagged trees
If a tag object points to a tree (or another unhandled type), the commit-
pointer is left uninitialized and later dereferenced. This patch adds a
default case to the switch that issues a warning and skips the object.

Signed-off-by: Erik Faye-Lund <kusmabite@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-19 12:29:26 -07:00
Erik Faye-Lund
1092f6b3f8 test-suite: adding a test for fast-export with tag variants
Signed-off-by: Erik Faye-Lund <kusmabite@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-19 12:29:25 -07:00
Ben Jackson
ea10b60c91 Work around ash "alternate value" expansion bug
Ash (used as /bin/sh on many distros) has a shell expansion bug
for the form ${var:+word word}.  The result is a single argument
"word word".  Work around by using ${var:+word} ${var:+word} or
equivalent.

Signed-off-by: Ben Jackson <ben@ben.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-18 21:37:46 -07:00
Junio C Hamano
5758b25da4 Merge branch 'nd/archive-attribute'
* nd/archive-attribute:
  archive test: attributes
  archive: do not read .gitattributes in working directory
  unpack-trees: do not muck with attributes when we are not checking out
  attr: add GIT_ATTR_INDEX "direction"
  archive tests: do not use .gitattributes in working directory
2009-04-18 14:46:08 -07:00
Junio C Hamano
cef5775b9f Merge branch 'maint'
* maint:
  Describe fixes since 1.6.2.3
  doc/git-daemon: add missing arguments to max-connections option
  doc/git-daemon: add missing arguments to options
  init: Do not segfault on big GIT_TEMPLATE_DIR environment variable
  imap-send: use correct configuration variable in documentation
2009-04-18 14:45:59 -07:00
Junio C Hamano
a4d1797332 Merge branch 'maint-1.6.0' into maint-1.6.1
* maint-1.6.0:
  doc/git-daemon: add missing arguments to options
  init: Do not segfault on big GIT_TEMPLATE_DIR environment variable
2009-04-18 14:43:24 -07:00
Junio C Hamano
08e7239c36 Merge branch 'bs/maint-1.6.0-tree-walk-prefix' into maint
* bs/maint-1.6.0-tree-walk-prefix:
  match_tree_entry(): a pathspec only matches at directory boundaries
  tree_entry_interesting: a pathspec only matches at directory boundary
2009-04-18 14:18:32 -07:00
Junio C Hamano
f392485813 Merge branch 'js/maint-submodule-checkout' into maint
* js/maint-submodule-checkout:
  Fix 'git checkout <submodule>' to update the index
2009-04-18 14:18:29 -07:00
Junio C Hamano
eb8a1c4aed Merge branch 'cb/maint-merge-recursive-submodule-fix' into maint
* cb/maint-merge-recursive-submodule-fix:
  simplify output of conflicting merge
  update cache for conflicting submodule entries
  add tests for merging with submodules
2009-04-18 14:18:25 -07:00
Junio C Hamano
d890d3f996 Merge branch 'maint-1.6.0' into maint
* maint-1.6.0:
  doc/git-daemon: add missing arguments to options
  init: Do not segfault on big GIT_TEMPLATE_DIR environment variable
2009-04-18 13:39:52 -07:00
Frank Lichtenheld
32d1776b13 init: Do not segfault on big GIT_TEMPLATE_DIR environment variable
Signed-off-by: Frank Lichtenheld <flichtenheld@astaro.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-18 13:06:40 -07:00
Junio C Hamano
fc917ad6b2 Merge branch 'mk/apply-swap'
* mk/apply-swap:
  builtin-apply: keep information about files to be deleted
  tests: test applying criss-cross rename patch
2009-04-17 21:42:13 -07:00
Junio C Hamano
1dd9b638c1 Merge branch 'jc/shared-literally'
* jc/shared-literally:
  t1301-shared-repo: fix forced modes test
2009-04-17 21:42:12 -07:00