summaryrefslogtreecommitdiff
path: root/t
AgeCommit message (Collapse)AuthorFilesLines
2012-07-11Merge branch 'th/diff-no-index-fixes' into maintLibravatar Junio C Hamano2-2/+86
"git diff --no-index" did not correctly handle relative paths and did not correctly give exit codes when run under "--quiet" option. * th/diff-no-index-fixes: diff-no-index: exit(1) if 'diff --quiet <repo file> <external file>' finds changes diff: handle relative paths in no-index
2012-07-11Merge branch 'nd/clone-single-fix' into maintLibravatar Junio C Hamano1-1/+6
"git clone --single-branch" to clone a single branch did not limit the cloning to the specified branch. * nd/clone-single-fix: clone: fix ref selection in --single-branch --branch=xxx
2012-07-11Merge branch 'mm/verify-filename-fix' into maintLibravatar Junio C Hamano1-0/+11
"git diff COPYING HEAD:COPYING" gave a nonsense error message that claimed that the treeish HEAD did not have COPYING in it. * mm/verify-filename-fix: verify_filename(): ask the caller to chose the kind of diagnosis sha1_name: do not trigger detailed diagnosis for file arguments
2012-06-22Documentation: Fix misspellingsLibravatar Leila Muhtasib2-3/+3
Signed-off-by: Leila Muhtasib <muhtasib@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-06-22clone: fix ref selection in --single-branch --branch=xxxLibravatar Nguyễn Thái Ngọc Duy1-1/+6
- do not fetch HEAD - do not also fetch refs following "xxx" Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-06-22diff-no-index: exit(1) if 'diff --quiet <repo file> <external file>' finds ↵Libravatar Tim Henigan1-1/+72
changes When running 'git diff --quiet <file1> <file2>', if file1 or file2 is outside the repository, it will exit(0) even if the files differ. It should exit(1) when they differ. This happens because 'diff_no_index' looks at the 'found_changes' member from 'diff_options' to determine if changes were made. This is the wrong thing to do, since it is only set if xdiff is actually run and it finds a change (the diff machinery will optimize out the xdiff call when it is not necessary) and in that case HAS_CHANGED flag needs to be taken into account. Use diff_result_code() that knows all these details for the correct exit value instead. Signed-off-by: Tim Henigan <tim.henigan@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-06-22diff: handle relative paths in no-indexLibravatar Jeff King1-1/+14
When diff-no-index is given a relative path to a file outside the repository, it aborts with error. However, if the file is given using an absolute path, the diff runs as expected. The two cases should be treated the same. Tests and commit message by Tim Henigan. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Tim Henigan <tim.henigan@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-06-18verify_filename(): ask the caller to chose the kind of diagnosisLibravatar Matthieu Moy1-1/+1
verify_filename() can be called in two different contexts. Either we just tried to interpret a string as an object name, and it fails, so we try looking for a working tree file (i.e. we finished looking at revs that come earlier on the command line, and the next argument must be a pathname), or we _know_ that we are looking for a pathname, and shouldn't even try interpreting the string as an object name. For example, with this change, we get: $ git log COPYING HEAD:inexistant fatal: HEAD:inexistant: no such path in the working tree. Use '-- <path>...' to specify paths that do not exist locally. $ git log HEAD:inexistant fatal: Path 'inexistant' does not exist in 'HEAD' Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-06-18sha1_name: do not trigger detailed diagnosis for file argumentsLibravatar Matthieu Moy1-0/+11
diagnose_invalid_sha1_path() is meant to be called to diagnose a misspelt <treeish>:<pathname> when <pathname> does not exist in <treeish>. However, the code may call it if <treeish>:<pathname> is invalid (which triggers another call with only_to_die == 1), but for another reason. This happens when calling e.g. git log existing-file HEAD:existing-file because existing-file is a path and not a revision, the code verifies that the arguments that follow to be paths. This leads to an incorrect message like "existing-file does not exist in HEAD", even though the path exists in HEAD. Check that the search for <pathname> in <treeish> fails before triggering the diagnosis. Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-06-15Merge branch 'as/diff-shortstat-ignore-binary'Libravatar Junio C Hamano1-0/+12
# By Alexander Strasser * as/diff-shortstat-ignore-binary: diff: Only count lines in show_shortstats
2012-06-15diff: Only count lines in show_shortstatsLibravatar Alexander Strasser1-0/+12
Do not mix byte and line counts. Binary files have byte counts; skip them when accumulating line insertions/deletions. The regression was introduced in e18872b. Signed-off-by: Alexander Strasser <eclipse7@gmx.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-06-13Merge branch 'rj/gitweb-test-sans-date-parser'Libravatar Junio C Hamano1-7/+14
Regression fix to t9501 introduced at 0f3ddd4 * rj/gitweb-test-sans-date-parser: gitweb: Skip 'modification times' tests when no date parser available
2012-06-13Merge branch 'fc/git-complete-helper-fix'Libravatar Junio C Hamano1-1/+1
* fc/git-complete-helper-fix: completion: put main git and gitk completion functions back into git namespace
2012-06-13completion: put main git and gitk completion functions back into git namespaceLibravatar SZEDER Gábor1-1/+1
Commit 7f02f3d7 (completion: rename internal helpers _git and _gitk, 2012-05-19) renamed said functions to _main_git() and _main_gitk(), respectively. By convention the name of our git-completion-specific functions start with '_git' or '__git' prefix, so rename those functions once again to put them back into our "namespace". Use the two underscore prefix, because _git_main() could be mistaken for the completion function of the (not yet existing) 'git main' command. Signed-off-by: SZEDER Gábor <szeder@ira.uka.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-06-12gitweb: Skip 'modification times' tests when no date parser availableLibravatar Ramsay Jones1-7/+14
The If-Modified-Since support in Gitweb is conditional on the availability of a date parser from either the HTTP::Date or Time::ParseDate modules. If a suitable parser is not available, then the corresponding 'modification times' tests should be skipped. Introduce the DATE_PARSER test prerequisite and use it to skip all of the dependent tests. Signed-off-by: Ramsay Jones <ramsay@ramsay1.demon.co.uk> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-06-12Merge branch 'jc/fmt-merge-msg-people'Libravatar Junio C Hamano1-18/+18
Tone down the lines that credit people involved and make them comments, so that integrators who edit their merge messages can still make use of the information, but lazy ones will not leave the unverified guesses placed on the "via" line. * jc/fmt-merge-msg-people: fmt-merge-msg: make attribution into comment lines
2012-06-07Merge branch 'rr/maint-t3510-cascade-fix'Libravatar Junio C Hamano1-1/+1
* rr/maint-t3510-cascade-fix: t3510 (cherry-pick-sequence): add missing '&&'
2012-06-06fmt-merge-msg: make attribution into comment linesLibravatar Junio C Hamano1-18/+18
The submaintainer credit is not something you can compute purely by looking at the history and its shape, especially in the presense of fast-forward merges, and this observation makes the information on the "via" line unreliable. Let's leave the final determination of credits up to whoever is making the merge and show them as comments. Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-06-04t3510 (cherry-pick-sequence): add missing '&&'Libravatar Ramkumar Ramachandra1-1/+1
Breaks in a test assertion's && chain can potentially hide failures from earlier commands in the chain. Fix an instance of this in the setup. Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-06-03Merge branch 'ef/maint-rebase-error-message' into maintLibravatar Junio C Hamano1-0/+5
When "git rebase" was given a bad commit to replay the history on, its error message did not correctly give the command line argument it had trouble parsing. By Erik Faye-Lund * ef/maint-rebase-error-message: rebase: report invalid commit correctly
2012-06-01Merge branch 'ef/maint-rebase-error-message'Libravatar Junio C Hamano1-0/+5
By Erik Faye-Lund * ef/maint-rebase-error-message: rebase: report invalid commit correctly
2012-06-01Merge branch 'nh/empty-rebase'Libravatar Junio C Hamano1-0/+30
* nh/empty-rebase: cherry-pick: regression fix for empty commits
2012-06-01Merge branch 'rs/maint-grep-F' into maintLibravatar Junio C Hamano1-0/+5
"git grep -e '$pattern'", unlike the case where the patterns are read from a file, did not treat individual lines in the given pattern argument as separate regular expressions as it should. By René Scharfe * rs/maint-grep-F: grep: stop leaking line strings with -f grep: support newline separated pattern list grep: factor out do_append_grep_pat() grep: factor out create_grep_pat()
2012-06-01Merge branch 'jk/ident-split-fix' into maintLibravatar Junio C Hamano1-0/+7
An author/committer name that is a single character was mishandled as an invalid name by mistake. By Jeff King * jk/ident-split-fix: fix off-by-one error in split_ident_line
2012-05-30rebase: report invalid commit correctlyLibravatar Erik Faye-Lund1-0/+5
In 9765b6a (rebase: align variable content, 2011-02-06), the code to error out was moved up one level. Unfortunately, one reference to a function parameter wasn't rewritten as it should, leading to the wrong parameter being errored on. This error was propagated by 71786f5 (rebase: factor out reference parsing, 2011-02-06) and merged in 78c6e0f (Merge branch 'mz/rebase', 2011-04-28). Correct this by reporting $onto_name istead. Reported-By: Manuela Hutter <manuelah@opera.com> Signed-off-by: Erik Faye-Lund <kusmabite@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-05-29cherry-pick: regression fix for empty commitsLibravatar Junio C Hamano1-0/+30
The earlier "--keep-redundant-commit" series broke "cherry-pick" that is given a commit whose change is already in the current history. Such a cherry-pick would result in an empty change, and should stop with an error, telling the user that conflict resolution may have made the result empty (which is exactly what is happening), but we silently dropped the change on the floor without any message nor non-zero exit code. Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-05-29t5701: modernize styleLibravatar Jeff King1-53/+20
This test is pretty old and did not follow some of our more modern best practices. In particular: 1. It chdir'd all over the place, leaving later tests to deal with the fallout. Do our chdirs in subshells instead. 2. It did not use test_must_fail. 3. It did not use test_line_count. 4. It checked for the non-existence of a ref by looking in the .git/refs directory (since we pack refs during clone these days, this will always be succeed, making the test useless). Note that one call to "-e .git/refs/..." remains, because it is checking for the existence of a symbolic ref, not a ref itself. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-05-29Merge branch 'va/git-p4-test'Libravatar Junio C Hamano1-3/+107
By Vitor Antunes * va/git-p4-test: git-p4: Clean up branch test cases git-p4: Verify detection of "empty" branch creation git-p4: Test changelists touching two branches
2012-05-29git-p4: Clean up branch test casesLibravatar Vitor Antunes1-3/+1
Correct submit description in one test and remove not required commands from another. Signed-off-by: Vitor Antunes <vitor.hda@gmail.com> Acked-by: Pete Wyckoff <pw@padd.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-05-29git-p4: Verify detection of "empty" branch creationLibravatar Vitor Antunes1-0/+54
Current implementation of new branch parent detection works on the principle that the new branch is a complete integration, with no changes, of the original files. This test shows this deficiency in the particular case when the new branch is created from a subset of the original files. Signed-off-by: Vitor Antunes <vitor.hda@gmail.com> Acked-by: Pete Wyckoff <pw@padd.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-05-29git-p4: Test changelists touching two branchesLibravatar Vitor Antunes1-0/+52
It is possible to modify two different branches in P4 in a single changelist. git-p4 correctly detects this and commits the relevant changes to the different branches separately. This test proves that and avoid future regressions in this behavior. Signed-off-by: Vitor Antunes <vitor.hda@gmail.com> Acked-by: Pete Wyckoff <pw@padd.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-05-25Merge branch 'mh/test-keep-prove-cache'Libravatar Junio C Hamano1-2/+4
By Michael Haggerty * mh/test-keep-prove-cache: t/Makefile: retain cache t/.prove across prove runs
2012-05-25Merge branch 'fc/git-complete-helper-fix'Libravatar Junio C Hamano1-1/+1
Resurrects old behaviour of _git/_gitk for external users.
2012-05-25Merge branch 'jk/ident-split-fix'Libravatar Junio C Hamano1-0/+7
An author/committer name that is a single character was mishandled as an invalid name by mistake.
2012-05-25Merge branch 'rs/maint-grep-F'Libravatar Junio C Hamano1-0/+5
"git grep -e '$pattern'", unlike the case where the patterns are read from a file, did not treat individual lines in the given pattern argument as separate regular expressions as it should.
2012-05-25Merge branch 'hv/submodule-alt-odb' into maintLibravatar Junio C Hamano1-0/+34
When a submodule repository uses alternate object store mechanism, some commands that were started from the superproject did not notice it and failed with "No such object" errors. The subcommands of "git submodule" command that recursed into the submodule in a separate process were OK; only the ones that cheated and peeked directly into the submodule's repository from the primary process were affected. By Heiko Voigt * hv/submodule-alt-odb: teach add_submodule_odb() to look for alternates
2012-05-25Merge branch 'bp/diff-no-index-strbuf-fix' into maintLibravatar Junio C Hamano1-0/+19
The directory path used in "git diff --no-index", when it recurses down, was broken with a recent update after v1.7.10.1 release. By Bobby Powers * bp/diff-no-index-strbuf-fix: diff --no-index: don't leak buffers in queue_diff diff --no-index: reset temporary buffer lengths on directory iteration
2012-05-24Merge branch 'jk/maint-status-porcelain-z-b' into maintLibravatar Junio C Hamano1-1/+15
"git status --porcelain" ignored "--branch" option by mistake. The output for "git status --branch -z" was also incorrect and did not terminate the record for the current branch name with NUL as asked. By Jeff King * jk/maint-status-porcelain-z-b: status: respect "-b" for porcelain format status: fix null termination with "-b" status: refactor null_termination option commit: refactor option parsing
2012-05-23Merge branch 'js/rebase-i-p-test-fix'Libravatar Junio C Hamano1-0/+1
By Johannes Sixt * js/rebase-i-p-test-fix: Fix t3411.3 to actually rebase something
2012-05-23Merge branch 'bp/diff-no-index-strbuf-fix'Libravatar Junio C Hamano1-0/+19
Fix regressions to "git diff --no-index" when it recurses down. By Bobby Powers * bp/diff-no-index-strbuf-fix: diff --no-index: don't leak buffers in queue_diff diff --no-index: reset temporary buffer lengths on directory iteration
2012-05-23Merge branch 'hv/submodule-alt-odb'Libravatar Junio C Hamano1-0/+34
When peeking into object stores of submodules, the code forgot that they might borrow objects from alternate object stores on their own. By Heiko Voigt * hv/submodule-alt-odb: teach add_submodule_odb() to look for alternates
2012-05-22fix off-by-one error in split_ident_lineLibravatar Jeff King1-0/+7
Commit 4b340cf split the logic to parse an ident line out of pretty.c's format_person_part. But in doing so, it accidentally introduced an off-by-one error that caused it to think that single-character names were invalid. This manifested itself as the "%an" format failing to show anything at all for a single-character name. Reported-by: Brian Turner <bturner@atlassian.com> Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-05-20Merge branch 'maint'Libravatar Junio C Hamano3-3/+4
By Jens Lehmann (1) and Johannes Sixt (1) * maint: Consistently use "superproject" instead of "supermodule" t3404: begin "exchange commits with -p" test with correct preconditions
2012-05-20grep: support newline separated pattern listLibravatar René Scharfe1-0/+5
Currently, patterns that contain newline characters don't match anything when given to git grep. Regular grep(1) interprets patterns as lists of newline separated search strings instead. Implement this functionality by creating and inserting extra grep_pat structures for patterns consisting of multiple lines when appending to the pattern lists. For simplicity, all pattern strings are duplicated. The original pattern is truncated in place to make it contain only the first line. Requested-by: Torne (Richard Coles) <torne@google.com> Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-05-20Consistently use "superproject" instead of "supermodule"Libravatar Jens Lehmann2-3/+3
We fairly consistently say "superproject" and never "supermodule" these days. But there are seven occurrences of "supermodule" left in the current work tree. Three appear in Release Notes for 1.5.3 and 1.7.7, three in test names and one in a C-code comment. Replace all occurrences of "supermodule" outside of the Release Notes (which shouldn't be changed after the fact) with "superproject" for consistency. Signed-off-by: Jens Lehmann <Jens.Lehmann@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-05-20t3404: begin "exchange commits with -p" test with correct preconditionsLibravatar Johannes Sixt1-0/+1
The test case shows a bug in 'rebase -p', but even if the bug were fixed the test would fail because it did not ensure that the preconditions match the postconditions that were checked. Insert the suitable 'git checkout'. Signed-off-by: Johannes Sixt <j6t@kdbg.org> Acked-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-05-20completion: rename internal helpers _git and _gitkLibravatar Felipe Contreras1-1/+1
Would be useful to provide backwards compatibility for _git. Also, zsh completion uses _git, and it cannot be changed. Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-05-20t/Makefile: retain cache t/.prove across prove runsLibravatar Michael Haggerty1-2/+4
prove(1) can write a summary of its test results and timings into a cache file, t/.prove, then use this information during later runs for various purposes. But deleting t/.prove after every test run defeats this purpose. So do not delete t/.prove as part of "make DEFAILT_TEST_TARGET=prove test". (Continue to delete the file on "make clean".) Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-05-18Fix t3411.3 to actually rebase somethingLibravatar Johannes Sixt1-0/+1
The test intends to rebase a branchy history onto a later commit, but it forgot to reset HEAD back to an earlier commit before it set up the side branches. In the end, every "rebased" commit was only a fast-forward and the 'rebase -p' did not change the commit graph at all. Insert the missing checkout that moves to an earlier commit. Signed-off-by: Johannes Sixt <j6t@kdbg.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-05-17Merge branch 'fc/git-complete-helper'Libravatar Junio C Hamano1-1/+1
By Felipe Contreras * fc/git-complete-helper: completion: add new __git_complete helper