Quilt (software)
Encyclopedia
Quilt is a software utility for managing a series of changes to the source code
Source code
In computer science, source code is text written using the format and syntax of the programming language that it is being written in. Such a language is specially designed to facilitate the work of computer programmers, who specify the actions to be performed by a computer mostly by writing source...

 of any computer program
Computer program
A computer program is a sequence of instructions written to perform a specified task with a computer. A computer requires programs to function, typically executing the program's instructions in a central processor. The program has an executable form that the computer can use directly to execute...

. Such changes are often referred to as "patches
Patch (computing)
A patch is a piece of software designed to fix problems with, or update a computer program or its supporting data. This includes fixing security vulnerabilities and other bugs, and improving the usability or performance...

" or "patch sets", and essentially Quilt takes N 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. This type of tool is very important for distributed software development
Software development
Software development is the development of a software product...

 where many programmers are collaborating to test and build a single large codebase. It's heavily used, for example, by the maintainers of the Linux kernel
Linux kernel
The Linux kernel is an operating system kernel used by the Linux family of Unix-like operating systems. It is one of the most prominent examples of free and open source software....

.

Quilt evolved from a set of patch-management scripts originally written by Linux kernel
Linux kernel
The Linux kernel is an operating system kernel used by the Linux family of Unix-like operating systems. It is one of the most prominent examples of free and open source software....

 developer Andrew Morton
Andrew Morton (computer programmer)
Andrew Keith Paul Morton is an Australian software engineer, best known as one of the lead developers of the Linux kernel...


, 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
GNU Savannah
GNU Savannah is a project of the Free Software Foundation initiated by Loïc Dachary, which serves as a collaborative software development management system for Free Software projects. Savannah currently offers CVS, GNU arch, Subversion, Git, Mercurial, Bazaar, mailing list, web hosting, file...

 project repository and distributed as free software
Free software
Free software, software libre or libre software is software that can be used, studied, and modified without restriction, and which can be copied and redistributed in modified or unmodified form either without restriction, or with restrictions that only ensure that further recipients can also do...

 (the exact license is GNU General Public License
GNU General Public License
The GNU General Public License is the most widely used free software license, originally written by Richard Stallman for the GNU Project....

 v2 or later).

It has been incorporated into dpkg
Dpkg
dpkg is the software at the base of the Debian package management system. dpkg is used to install, remove, and provide information about .deb packages....

, Debian
Debian
Debian is a computer operating system composed of software packages released as free and open source software primarily under the GNU General Public License along with other free software licenses. Debian GNU/Linux, which includes the GNU OS tools and Linux kernel, is a popular and influential...

's package manager and will be one of the standard source formats supported from the Debian "squeeze" release onwards. This source format is identified as "3.0 (quilt)" by dpkg.

The name originated from patchwork quilt
Patchwork quilt
A patchwork quilt is a quilt in which the top layer consists of pieces of fabric sewn together to form a design. The quilting design does not necessarily follow the patchwork design, and the design of the quilting may play off the patchwork design....

.

See also

  • The Mercurial
    Mercurial (software)
    Mercurial is a cross-platform, distributed revision control tool for software developers. It is mainly implemented using the Python programming language, but includes a binary diff implementation written in C. It is supported on Windows and Unix-like systems, such as FreeBSD, Mac OS X and Linux...

    extension mq provides similar functionality.


External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK