regression: 011 should test guilt-commit as well
[guilt.git] / Documentation / guilt.txt
blobe2b7aa1511ae8a64addab4078f6bca16cf6c0d13
1 guilt(7)
2 ========
4 NAME
5 ----
6 guilt - quilt on top of git
8 SYNOPSIS
9 --------
10 'guilt' COMMAND [ARGS]
12 DESCRIPTION
13 -----------
15 Andrew Morton originally developed a set of scripts for maintaining kernel
16 patches outside of any SCM tool. Others extended these into a suite called
17 quilt. The basic idea behind quilt is to maintain patches instead of
18 maintaining source files. Patches can be added, removed or reordered, and
19 they can be refreshed as you fix bugs or update to a new base revision.
20 quilt is very powerful, but it is not integrated with the underlying SCM
21 tools. This makes it difficult to visualize your changes.
23 Guilt allows one to use quilt functionality on top of a Git repository.
24 Changes are maintained as patches which are committed into Git.  Commits can
25 be removed or reordered, and the underlying patch can be refreshed based on
26 changes made in the working directory. The patch directory can also be
27 placed under revision control, so you can have a separate history of changes
28 made to your patches.
30 PATCHES DIRECTORY
31 -----------------
33 In Guilt, all the patches are stored in .git/patches/$branch/, where $branch
34 is the name of the branch being worked on. This means that one can have a
35 independent series of patches for each branch present in the repository.
36 Each of these per-branch directories contains 2 special files:
38 series: This file contains a list of all the patch filenames relative to the
39 per-branch patch directory. Empty and commented out lines are ignored.
41 status: This file contains the state of the stack. What patches are applied.
43 HOOKS
44 -----
45 Any guilt operation may execute zero or more hook scripts which can be used
46 to run any houskeeping commands or even abort the execution of the command.
48 include::hooks.txt[]
50 GUILT COMMANDS
51 --------------
52 All commands can be called with or without a dash. e.g. 'guilt add' or
53 'guilt-add'
55 include::cmds.txt[]
57 Author
58 ------
59 Written by Josef "Jeff" Sipek <jeffpc@josefsipek.net>
61 Documentation
62 --------------
63 Documentation by Brandon Philips <brandon@ifup.org> and Josef "Jeff" Sipek
64 <jeffpc@josefsipek.net>
66 include::footer.txt[]