Developer(s) | Andreas Gruenbacher, Jean Delvare |
---|---|
Stable release |
0.65 / September 9, 2016
|
Repository | git |
Written in | Shell script |
Operating system | Cross-platform |
Type | Patch management |
License | GPLv2+ |
Website | savannah |
Quilt is a software utility for managing a series of changes to the source code of any computer program. Such changes are often referred to as "patches" or "patch sets", and essentially Quilt takes an arbitrary number of patches and turns them into a single patch. In doing so, quilt makes it easier for other programmers to test and evaluate the different changes before they are permanently inserted into the source code.
Tools of this type are very important for distributed software development, in which many programmers collaborate to test and build a single large codebase. For example, quilt is heavily used by the maintainers of the Linux kernel.
Quilt evolved from a set of patch-management scripts originally written by Linux kernel developer Andrew Morton, and was developed by Andreas Grünbacher for maintaining Linux kernel customizations for SuSE Linux. It is now being developed as a community effort, hosted at the GNU Savannah project repository and distributed as free software (its license is GNU General Public License v2 or later). Quilt's name originated from patchwork quilt.
Quilt has been incorporated into dpkg,Debian's package manager and is one of the standard source formats supported from the Debian "squeeze" release onwards. This source format is identified as "3.0 (quilt)" by dpkg. Quilt is integrated into the Buildroot, which is notably used by OpenWrt. Quilt is also integrated into and supported by the similar Yocto Project build system supported by the Linux Foundation.
Mercurial queues (mq), as an extension of the Mercurial revision control system, provides similar functionality.