From: Philippe Blain <levraiphilippeblain@xxxxxxxxx> Since 23fc63bf8f (make tests ignorable with "make -i", 2005-11-08), each test file defines a target in the test Makefile, such that one can invoke: make *checkout* to run all tests with 'checkout' in their filename. This is useful to run a subset of tests when you have a good idea of what part of the code is touched by the changes your are testing. Document that in t/README to help new (or more seasoned) contributors that might not be aware. Signed-off-by: Philippe Blain <levraiphilippeblain@xxxxxxxxx> --- t/README: mention test files are make targets Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-1701%2Fphil-blain%2Ftests-makefile-targets-v1 Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-1701/phil-blain/tests-makefile-targets-v1 Pull-Request: https://github.com/gitgitgadget/git/pull/1701 t/README | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/t/README b/t/README index 621d3b8c095..71211109338 100644 --- a/t/README +++ b/t/README @@ -32,6 +32,13 @@ the tests. ok 2 - plain with GIT_WORK_TREE ok 3 - plain bare +t/Makefile defines a target for each test file, such that you can also use +shell pattern matching to run a subset of the tests: + + make *checkout* + +will run all tests with 'checkout' in their filename. + Since the tests all output TAP (see https://testanything.org) they can be run with any TAP harness. Here's an example of parallel testing powered by a recent version of prove(1): base-commit: 3e0d3cd5c7def4808247caf168e17f2bbf47892b -- gitgitgadget