#!/bin/bash
A Conflict And Dependency Patch-Tester
a patch conflict and dependency detection tool
A shell script that can test-apply a large set of patches against a given directory and detect all dependencies and conflicts between patches.
It’s main features are:
- independent of any certain patch format: it solely relies on patchutils to perform tests
- does not rely on patches being pre-sorted
- does not modify any files, all tests are done in a (partial) on-the-fly copy of the directory
- it detects alternative patches, e.g. when patch b would apply if patch a1 or patch a2 were applied
- it detects if a patch depends on several patches which themselves don’t depend on each other
- it detects conflicts, where one patch does not apply when another is already applied
- it writes test results to an easy to parse log file for postprocessing
Usage:
Patch-Groups [ -patchdir <pd> ] [ -basedir <bd> ] [ -outdir <od> ] [ -p <p0> ]
Test-applies all *.patch files in <pd> to (a copy of) the directory <bd>.
<pd>, <bd> and <od> must be absolute filenames. The defaults are sm-patches, the local directory and outdir.
Patches are supposed to apply with the -p patch option (-p0 is the default).
Patch filenames must not contain white-space, and currently no patch name must
be a part of another patch name (abc.patch and bc.patch is bad).
fixdiff_*.patch files are ignored.
All output and temporary files will be written to <od>.
WARNING: everything in outdir/testdir (<od>/testdir) will be deleted!
Project Category: tool
Project owner: stf
Version history:
| Version | Release date | ChangeLog | Download |
| 0.7.5.1 | Sun Mar 12 17:32:05 UTC 2006 | Changes to pre-0.7 versions: - parse options with GNU getopt (from util-linux) - perform sanity checks on options and the environment (e.g. missing programs) - exhaustive_dependency_test() now implements a non-recursive, easier to understand algorithm that should produce correct results in all cases - conflict_test() will note how to avoid conflicts between patches, if possible (e.g. if patches A and B apply independently and patch B applies after patch A was applied, but not vice versa). - unneeded code like combine() and patch group creation are removed, for simplicity’s sake | Patch-Tester-0.7.5 (application/octet-stream) |
| 0.7.5 | Sun Mar 12 17:26:45 UTC 2006 | Patch-Tester-0.7.5 (application/octet-stream) | |
| 0.7.1 | Fri Mar 10 23:11:11 UTC 2006 | update long explanation | Patch-Tester (application/octet-stream) |
| 0.7 | Fri Mar 10 23:01:24 UTC 2006 | Patch-Tester (application/octet-stream) |