summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2009-03-30quote: add "sq_dequote_to_argv" to put unwrapped args in an argv arrayLibravatar Christian Couder2-0/+18
This new function unwraps the space separated shell quoted elements in its first argument and places them in the argv array passed as its second argument. Signed-off-by: Christian Couder <chriscool@tuxfamily.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-03-30quote: implement "sq_dequote_many" to unwrap many args in one stringLibravatar Christian Couder2-2/+24
The sq_dequote() function does not allow parsing a string with more than one single-quoted parameter easily; use its code to implement a new API sq_dequote_step() to allow the caller iterate through such a string to parse them one-by-one. The original sq_dequote() becomes a thin wrapper around it. Signed-off-by: Christian Couder <chriscool@tuxfamily.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-03-24Merge branch 'maint'Libravatar Junio C Hamano3-3/+3
* maint: Increase the size of the die/warning buffer to avoid truncation close_sha1_file(): make it easier to diagnose errors avoid possible overflow in delta size filtering computation
2009-03-24Add warning about known issues to documentation of cvsimportLibravatar Heiko Voigt1-0/+34
The described issues are compiled from the tests by Michael Haggerty and me. Because it is not apparent that these can be fixed anytime soon at least warn unwary users not to rely on the inbuilt cvsimport to much. Signed-off-by: Heiko Voigt <hvoigt@hvoigt.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-03-24completion: add --thread=deep/shallow to format-patchLibravatar Stephen Boyd1-1/+7
Signed-off-by: Stephen Boyd <bebarino@gmail.com> Trivially-Acked-By: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-03-24completion: add --cc and --no-attachment option to format-patchLibravatar Stephen Boyd1-2/+2
Signed-off-by: Stephen Boyd <bebarino@gmail.com> Trivially-Acked-By: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-03-24completion: add --annotate option to send-emailLibravatar Stephen Boyd1-2/+2
Signed-off-by: Stephen Boyd <bebarino@gmail.com> Trivially-Acked-By: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-03-24Increase the size of the die/warning buffer to avoid truncationLibravatar Shawn O. Pearce1-1/+1
Long messages like those from lockfile.c when a lock can't be obtained truncate with only 256 bytes in the message buffer. Bump it to 1024 to give more space for these longer cases. Signed-off-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-03-24Merge branch 'maint-1.6.1' into maintLibravatar Junio C Hamano2-2/+2
* maint-1.6.1: close_sha1_file(): make it easier to diagnose errors avoid possible overflow in delta size filtering computation
2009-03-24Merge branch 'maint-1.6.0' into maint-1.6.1Libravatar Junio C Hamano2-2/+2
* maint-1.6.0: close_sha1_file(): make it easier to diagnose errors avoid possible overflow in delta size filtering computation
2009-03-24MinGW: Quote arguments for subprocesses that contain a single-quoteLibravatar Johannes Sixt1-1/+1
Before a process can be spawned by mingw_spawnve, arguments must be surrounded by double-quotes if special characters are present. This is necessary because the startup code of the spawned process will expand arguments that look like glob patterns. "Normal" Windows command line utilities expand only * and ?, but MSYS programs, including bash, are different: They also expand braces, and this has already been taken care of by compat/mingw.c:quote_arg(). But MSYS programs also treat single-quotes in a special way: Arguments between single-quotes are spliced together (with spaces) into a word. With this patch this treatment is avoided by quoting arguments that contain single-quotes. This lets t4252 pass on Windows. Signed-off-by: Johannes Sixt <j6t@kdbg.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-03-24Merge branch 'js/windows-tests'Libravatar Junio C Hamano52-288/+594
* js/windows-tests: t0060: fix whitespace in "wc -c" invocation t5503: GIT_DEBUG_SEND_PACK is not supported on MinGW t7004: Use prerequisite tags to skip tests that need gpg Use prerequisites to skip tests that need unzip t3700: Skip a test with backslashes in pathspec Skip tests that require a filesystem that obeys POSIX permissions t0060: Fix tests on Windows Use prerequisite tags to skip tests that depend on symbolic links t9100, t9129: Use prerequisite tags for UTF-8 tests t5302: Use prerequisite tags to skip 64-bit offset tests Skip tests that fail if the executable bit is not handled by the filesystem t3600: Use test prerequisite tags test-lib: Infrastructure to test and check for prerequisites t0050: Check whether git init detected symbolic link support correctly Tests on Windows: $(pwd) must return Windows-style paths test-lib: Work around missing sum on Windows test-lib: Work around incompatible sort and find on Windows Conflicts: t/t3000-ls-files-others.sh
2009-03-24close_sha1_file(): make it easier to diagnose errorsLibravatar Linus Torvalds1-1/+1
A bug report with "unable to write sha1 file" made us realize that we do not have enough information to guess why close() is failing. Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-03-24avoid possible overflow in delta size filtering computationLibravatar Nicolas Pitre1-1/+1
On a 32-bit system, the maximum possible size for an object is less than 4GB, while 64-bit systems may cope with larger objects. Due to this limitation, variables holding object sizes are using an unsigned long type (32 bits on 32-bit systems, or 64 bits on 64-bit systems). When large objects are encountered, and/or people play with large delta depth values, it is possible for the maximum allowed delta size computation to overflow, especially on a 32-bit system. When this occurs, surviving result bits may represent a value much smaller than what it is supposed to be, or even zero. This prevents some objects from being deltified although they do get deltified when a smaller depth limit is used. Fix this by always performing a 64-bit multiplication. Signed-off-by: Nicolas Pitre <nico@cam.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-03-23refs: use warning() instead of fprintf(stderr, "warning: ")Libravatar Miklos Vajna1-5/+3
Signed-off-by: Miklos Vajna <vmiklos@frugalware.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-03-23builtin-show-ref: use warning() instead of fprintf(stderr, "warning: ")Libravatar Miklos Vajna1-1/+1
Signed-off-by: Miklos Vajna <vmiklos@frugalware.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-03-23builtin-show-branch: use warning() instead of fprintf(stderr, "warning: ")Libravatar Miklos Vajna1-2/+1
Signed-off-by: Miklos Vajna <vmiklos@frugalware.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-03-23builtin-rm: use warning() instead of fprintf(stderr, "warning: ")Libravatar Miklos Vajna1-2/+1
Signed-off-by: Miklos Vajna <vmiklos@frugalware.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-03-23builtin-init-db: use warning() instead of fprintf(stderr, "warning: ")Libravatar Miklos Vajna1-4/+3
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-03-23builtin-fetch-pack: use warning() instead of fprintf(stderr, "warning: ")Libravatar Miklos Vajna1-1/+1
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-03-23builtin-checkout: use warning() instead of fprintf(stderr, "warning: ")Libravatar Miklos Vajna1-2/+2
Signed-off-by: Miklos Vajna <vmiklos@frugalware.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-03-23builtin-apply: use warning() instead of fprintf(stderr, "warning: ")Libravatar Miklos Vajna1-8/+7
Signed-off-by: Miklos Vajna <vmiklos@frugalware.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-03-23http-push: using error() and warning() as appropriateLibravatar Miklos Vajna1-3/+3
Change three occurences of using inconsistent error/warning reporting by using the relevant error() / warning() calls to be consitent with the rest of the code. Signed-off-by: Miklos Vajna <vmiklos@frugalware.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-03-23t0060: fix whitespace in "wc -c" invocationLibravatar Jeff King1-1/+1
Some platforms like to stick extra whitespace in the output of "wc -c"; using the result without quotes gets the shell to collapse the whitespace. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-03-22Makefile: turn on USE_ST_TIMESPEC for FreeBSDLibravatar Jeff King1-0/+1
Fixes broken compilation on FreeBSD 6.1. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-03-22bash completion: add options for 'git fsck'Libravatar Arto Jonsson1-0/+16
Signed-off-by: Arto Jonsson <ajonsson@kapsi.fi> Acked-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-03-22Add --staged to bash completion for git diffLibravatar Kevin McConnell1-1/+1
The --staged option (synonym for --cached) isn't listed in the completion choices for git diff. This tiny patch adds it. Trivially-Acked-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-03-22Improve error message about fetch into current branchLibravatar Alex Riesen1-1/+2
Otherwise, it is hard to guess why the fetch failed. Make sure we at least mention that the repository must be bare. Also the current branch is printed. Signed-off-by: Alex Riesen <raa.lkml@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-03-22Merge branch 'maint'Libravatar Junio C Hamano1-1/+1
* maint: everyday: use the dashless form of git-init
2009-03-22Merge branch 'maint-1.6.1' into maintLibravatar Junio C Hamano1-1/+1
* maint-1.6.1: everyday: use the dashless form of git-init
2009-03-22Merge branch 'maint-1.6.0' into maint-1.6.1Libravatar Junio C Hamano1-1/+1
* maint-1.6.0: everyday: use the dashless form of git-init
2009-03-22everyday: use the dashless form of git-initLibravatar David Aguilar1-1/+1
The 'Everyday GIT' guide was using the old dashed form of git-init. Signed-off-by: David Aguilar <davvid@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-03-22t5503: GIT_DEBUG_SEND_PACK is not supported on MinGWLibravatar Johannes Sixt1-0/+7
The test opens fd 3 and instructs git-upload-pack (via GIT_DEBUG_SEND_PACK) to log information to that channel. The way in which new processes are spawned by git on MinGW does not inherit all file descriptors to the child processes, but only 0, 1, and 2. The tests in t5503 require that file descriptor 3 is inherited from git-fetch to git-upload-pack. A complete implementation is non-trivial and not warranted just to satisfy this test. Note that the incompleteness applies only to the executables that use compat/mingw.c; bash and perl (the other important executables used by git) are complete, of course. Signed-off-by: Johannes Sixt <j6t@kdbg.org>
2009-03-22t7004: Use prerequisite tags to skip tests that need gpgLibravatar Johannes Sixt1-49/+48
The tests are skipped if no gpg was found or if gpg is version 1.0.6. Previously, the latter condition was checked a bit later in the test file so that the tag verification tests would be exercised. These are now skipped as well, but only because we would need a facility to revoke a test prerequisite, which we do not have. Signed-off-by: Johannes Sixt <j6t@kdbg.org>
2009-03-22Use prerequisites to skip tests that need unzipLibravatar Johannes Sixt2-11/+11
Signed-off-by: Johannes Sixt <j6t@kdbg.org>
2009-03-22t3700: Skip a test with backslashes in pathspecLibravatar Johannes Sixt2-1/+3
The test verifies that glob special characters can be escaped with backslashes. In particular, the string fo\[ou\]bar is given to git. On Windows, this does not work because backslashes are first of all directory separators, and first thing git does with a pathspec from the command line is to convert backslashes to forward slashes. Signed-off-by: Johannes Sixt <j6t@kdbg.org>
2009-03-22Skip tests that require a filesystem that obeys POSIX permissionsLibravatar Johannes Sixt6-19/+23
Signed-off-by: Johannes Sixt <j6t@kdbg.org>
2009-03-22t0060: Fix tests on WindowsLibravatar Johannes Sixt1-33/+83
Since the MSYS bash mangles absolute paths that it passes as command line arguments to non-MSYS progams (such as git or test-path-utils), we have to bend over backwards to squeeze some usefulness out of the existing tests. In particular, a set of path normalization tests is added that test relative paths. Some paths in the ancestor path tests are adjusted to help MSYS bash's path mangling heuristics. Signed-off-by: Johannes Sixt <j6t@kdbg.org>
2009-03-22Use prerequisite tags to skip tests that depend on symbolic linksLibravatar Johannes Sixt32-76/+211
Many tests depend on that symbolic links work. This introduces a check that sets the prerequisite tag SYMLINKS if the file system supports symbolic links. Since so many tests have to check for this prerequisite, we do the check in test-lib.sh, so that we don't need to repeat the test in many scripts. To check for 'ln -s' failures, you can use a FAT partition on Linux: $ mkdosfs -C git-on-fat 1000000 $ sudo mount -o loop,uid=j6t,gid=users,shortname=winnt git-on-fat /mnt Clone git to /mnt and $ GIT_SKIP_TESTS='t0001.1[34] t0010 t1301 t403[34] t4129.[47] t5701.7 t7701.3 t9100 t9101.26 t9119 t9124.[67] t9200.10 t9600.6' \ make test (These additionally skipped tests depend on POSIX permissions that FAT on Linux does not provide.) Signed-off-by: Johannes Sixt <j6t@kdbg.org>
2009-03-22t9100, t9129: Use prerequisite tags for UTF-8 testsLibravatar Johannes Sixt2-31/+28
Signed-off-by: Johannes Sixt <j6t@kdbg.org>
2009-03-22t5302: Use prerequisite tags to skip 64-bit offset testsLibravatar Johannes Sixt1-10/+5
The effects of this patch can be tested on Linux by commenting out #define _FILE_OFFSET_BITS 64 in git-compat-util.h. Signed-off-by: Johannes Sixt <j6t@kdbg.org>
2009-03-22Skip tests that fail if the executable bit is not handled by the filesystemLibravatar Johannes Sixt5-20/+42
Signed-off-by: Johannes Sixt <j6t@kdbg.org>
2009-03-22t3600: Use test prerequisite tagsLibravatar Johannes Sixt1-28/+30
There are two prerequisites: - The filesystem supports names with tabs or new-lines. - Files cannot be removed if their containing directory is read-only. Previously, whether these preconditions are satisified was tested inside test_expect_success. We move these tests outside because, strictly speaking, they are not part of the tests. Signed-off-by: Johannes Sixt <j6t@kdbg.org>
2009-03-21Merge branch 'dm/maint-docco'Libravatar Junio C Hamano6-150/+154
* dm/maint-docco: Documentation: reword example text in git-bisect.txt. Documentation: reworded the "Description" section of git-bisect.txt. Documentation: minor grammatical fixes in git-branch.txt. Documentation: minor grammatical fixes in git-blame.txt. Documentation: reword the "Description" section of git-bisect.txt. Documentation: minor grammatical fixes in git-archive.txt.
2009-03-21Merge branch 'mg/test-installed'Libravatar Junio C Hamano1-3/+11
* mg/test-installed: test-lib.sh: Allow running the test suite against installed git test-lib.sh: Test for presence of git-init in the right path.
2009-03-21Sync with maintLibravatar Junio C Hamano4-22/+35
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-03-21Update draft release notes to 1.6.2.2Libravatar Junio C Hamano2-1/+36
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-03-21ls-files: require worktree when --deleted is givenLibravatar Jeff King1-0/+1
The code will end up calling lstat() to check whether the file still exists; obviously this doesn't work if we're not in the worktree. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-03-21pickaxe: count regex matches only onceLibravatar René Scharfe1-2/+4
When --pickaxe-regex is used, forward past the end of matches instead of advancing to the byte after their start. This way matches count only once, even if the regular expression matches their tail -- like in the fixed-string fork of the code. E.g.: /.*/ used to count the number of bytes instead of the number of lines. /aa/ resulted in a count of two in "aaa" instead of one. Also document the fact that regexec() needs a NUL-terminated string as its second argument by adding an assert(). Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-03-21Merge branch 'maint-1.6.1' into maintLibravatar Junio C Hamano0-0/+0
* maint-1.6.1: