1 <!DOCTYPE html PUBLIC
"-//W3C//DTD XHTML 1.1//EN"
2 "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
3 <html xmlns=
"http://www.w3.org/1999/xhtml" xml:
lang=
"en">
5 <meta http-equiv=
"Content-Type" content=
"application/xhtml+xml; charset=UTF-8" />
6 <meta name=
"generator" content=
"AsciiDoc 8.6.4" />
7 <title>guilt(
7)
</title>
8 <style type=
"text/css">
10 h1
, h2
, h3
, h4
, h5
, h6
,
11 div
.title
, caption
.title
,
12 thead
, p
.table
.header
,
14 span#author
, span#revnumber
, span#revdate
, span#revremark
,
16 font-family: Arial
,Helvetica
,sans-serif
;
21 font-family: Georgia
,"Times New Roman",Times
,serif
;
30 margin: 1em 5% 1em 5%;
35 text-decoration: underline
;
56 h1
, h2
, h3
, h4
, h5
, h6
{
64 border-bottom: 2px solid silver
;
81 border: 1px solid silver
;
92 ul
> li
{ color: #aaa; }
93 ul
> li
> * { color: black
; }
107 span#revnumber
, span#revdate
, span#revremark
{
112 border-top: 2px solid silver
;
118 padding-bottom: 0.5em;
122 padding-bottom: 0.5em;
127 margin-bottom: 1.5em;
129 div
.tableblock
, div
.imageblock
, div
.exampleblock
, div
.verseblock
,
130 div
.quoteblock
, div
.literalblock
, div
.listingblock
, div
.sidebarblock
,
131 div
.admonitionblock
{
133 margin-bottom: 1.5em;
135 div
.admonitionblock
{
137 margin-bottom: 2.0em;
142 div
.content
{ /* Block element content. */
146 /* Block element titles. */
147 div
.title
, caption
.title
{
152 margin-bottom: 0.5em;
158 td div
.title:first-child
{
161 div
.content div
.title:first-child
{
164 div
.content
+ div
.title
{
168 div
.sidebarblock
> div
.content
{
170 border: 1px solid
#dddddd;
171 border-left: 4px solid
#f0f0f0;
175 div
.listingblock
> div
.content
{
176 border: 1px solid
#dddddd;
177 border-left: 5px solid
#f0f0f0;
182 div
.quoteblock
, div
.verseblock
{
186 border-left: 5px solid
#f0f0f0;
190 div
.quoteblock
> div
.attribution
{
195 div
.verseblock
> pre
.content
{
196 font-family: inherit
;
199 div
.verseblock
> div
.attribution
{
203 /* DEPRECATED: Pre version 8.2.7 verse style literal block. */
204 div
.verseblock
+ div
.attribution
{
208 div
.admonitionblock
.icon
{
212 text-decoration: underline
;
214 padding-right: 0.5em;
216 div
.admonitionblock td
.content
{
218 border-left: 3px solid
#dddddd;
221 div
.exampleblock
> div
.content
{
222 border-left: 3px solid
#dddddd;
226 div
.imageblock div
.content
{ padding-left: 0; }
227 span
.image img
{ border-style: none
; }
228 a
.image:visited
{ color: white
; }
232 margin-bottom: 0.8em;
245 list-style-position: outside
;
248 list-style-type: decimal
;
251 list-style-type: lower-alpha
;
254 list-style-type: upper-alpha
;
257 list-style-type: lower-roman
;
260 list-style-type: upper-roman
;
263 div
.compact ul
, div
.compact ol
,
264 div
.compact p
, div
.compact p
,
265 div
.compact div
, div
.compact div
{
267 margin-bottom: 0.1em;
270 div
.tableblock
> table
{
271 border: 3px solid
#527bbd;
273 thead
, p
.table
.header
{
286 /* Because the table frame attribute is overriden by CSS in most browsers. */
287 div
.tableblock
> table
[frame
="void"] {
290 div
.tableblock
> table
[frame
="hsides"] {
291 border-left-style: none
;
292 border-right-style: none
;
294 div
.tableblock
> table
[frame
="vsides"] {
295 border-top-style: none
;
296 border-bottom-style: none
;
302 margin-bottom: 0.8em;
305 padding-bottom: 15px;
307 dt
.hdlist1
.strong
, td
.hdlist1
.strong
{
313 padding-right: 0.8em;
319 div
.hdlist
.compact tr
{
328 .footnote, .footnoteref {
332 span
.footnote
, span
.footnoteref
{
333 vertical-align: super
;
337 margin: 20px 0 20px 0;
341 #footnotes div
.footnote
{
347 border-top: 1px solid silver
;
356 padding-right: 0.5em;
357 padding-bottom: 0.3em;
365 div#footer-badges
{ display: none
; }
369 margin-bottom: 2.5em;
377 margin-bottom: 0.1em;
380 div
.toclevel1
, div
.toclevel2
, div
.toclevel3
, div
.toclevel4
{
397 span
.aqua
{ color: aqua
; }
398 span
.black
{ color: black
; }
399 span
.blue
{ color: blue
; }
400 span
.fuchsia
{ color: fuchsia
; }
401 span
.gray
{ color: gray
; }
402 span
.green
{ color: green
; }
403 span
.lime
{ color: lime
; }
404 span
.maroon
{ color: maroon
; }
405 span
.navy
{ color: navy
; }
406 span
.olive
{ color: olive
; }
407 span
.purple
{ color: purple
; }
408 span
.red
{ color: red
; }
409 span
.silver
{ color: silver
; }
410 span
.teal
{ color: teal
; }
411 span
.white
{ color: white
; }
412 span
.yellow
{ color: yellow
; }
414 span
.aqua-background
{ background: aqua
; }
415 span
.black-background
{ background: black
; }
416 span
.blue-background
{ background: blue
; }
417 span
.fuchsia-background
{ background: fuchsia
; }
418 span
.gray-background
{ background: gray
; }
419 span
.green-background
{ background: green
; }
420 span
.lime-background
{ background: lime
; }
421 span
.maroon-background
{ background: maroon
; }
422 span
.navy-background
{ background: navy
; }
423 span
.olive-background
{ background: olive
; }
424 span
.purple-background
{ background: purple
; }
425 span
.red-background
{ background: red
; }
426 span
.silver-background
{ background: silver
; }
427 span
.teal-background
{ background: teal
; }
428 span
.white-background
{ background: white
; }
429 span
.yellow-background
{ background: yellow
; }
431 span
.big
{ font-size: 2em; }
432 span
.small
{ font-size: 0.6em; }
433 /* Overrides for manpage documents */
436 padding-bottom: 0.5em;
437 border-top: 2px solid silver
;
438 border-bottom: 2px solid silver
;
448 div#toc
{ display: none
; }
452 <script type=
"text/javascript">
454 window
.onload = function(){asciidoc
.footnotes();}
455 var asciidoc
= { // Namespace.
457 /////////////////////////////////////////////////////////////////////
458 // Table Of Contents generator
459 /////////////////////////////////////////////////////////////////////
461 /* Author: Mihai Bazon, September 2002
462 * http://students.infoiasi.ro/~mishoo
464 * Table Of Content generator
467 * Feel free to use this script under the terms of the GNU General Public
468 * License, as long as you do not remove or alter this notice.
471 /* modified by Troy D. Hanson, September 2006. License: GPL */
472 /* modified by Stuart Rackham, 2006, 2009. License: GPL */
475 toc: function (toclevels
) {
477 function getText(el
) {
479 for (var i
= el
.firstChild
; i
!= null; i
= i
.nextSibling
) {
480 if (i
.nodeType
== 3 /* Node.TEXT_NODE */) // IE doesn't speak constants.
482 else if (i
.firstChild
!= null)
488 function TocEntry(el
, text
, toclevel
) {
491 this.toclevel
= toclevel
;
494 function tocEntries(el
, toclevels
) {
495 var result
= new Array
;
496 var re
= new RegExp('[hH]([2-'+(toclevels
+1)+'])');
497 // Function that scans the DOM tree for header elements (the DOM2
498 // nodeIterator API would be a better technique but not supported by all
500 var iterate = function (el
) {
501 for (var i
= el
.firstChild
; i
!= null; i
= i
.nextSibling
) {
502 if (i
.nodeType
== 1 /* Node.ELEMENT_NODE */) {
503 var mo
= re
.exec(i
.tagName
);
504 if (mo
&& (i
.getAttribute("class") || i
.getAttribute("className")) != "float") {
505 result
[result
.length
] = new TocEntry(i
, getText(i
), mo
[1]-1);
515 var toc
= document
.getElementById("toc");
516 var entries
= tocEntries(document
.getElementById("content"), toclevels
);
517 for (var i
= 0; i
< entries
.length
; ++i
) {
518 var entry
= entries
[i
];
519 if (entry
.element
.id
== "")
520 entry
.element
.id
= "_toc_" + i
;
521 var a
= document
.createElement("a");
522 a
.href
= "#" + entry
.element
.id
;
523 a
.appendChild(document
.createTextNode(entry
.text
));
524 var div
= document
.createElement("div");
526 div
.className
= "toclevel" + entry
.toclevel
;
527 toc
.appendChild(div
);
529 if (entries
.length
== 0)
530 toc
.parentNode
.removeChild(toc
);
534 /////////////////////////////////////////////////////////////////////
535 // Footnotes generator
536 /////////////////////////////////////////////////////////////////////
538 /* Based on footnote generation code from:
539 * http://www.brandspankingnew.net/archive/2005/07/format_footnote.html
542 footnotes: function () {
543 var cont
= document
.getElementById("content");
544 var noteholder
= document
.getElementById("footnotes");
545 var spans
= cont
.getElementsByTagName("span");
548 for (i
=0; i
<spans
.length
; i
++) {
549 if (spans
[i
].className
== "footnote") {
551 // Use [\s\S] in place of . so multi-line matches work.
552 // Because JavaScript has no s (dotall) regex flag.
553 note
= spans
[i
].innerHTML
.match(/\s*\[([\s\S]*)]\s*/)[1];
554 noteholder
.innerHTML
+=
555 "<div class='footnote' id='_footnote_" + n
+ "'>" +
556 "<a href='#_footnoteref_" + n
+ "' title='Return to text'>" +
557 n
+ "</a>. " + note
+ "</div>";
559 "[<a id='_footnoteref_" + n
+ "' href='#_footnote_" + n
+
560 "' title='View footnote' class='footnote'>" + n
+ "</a>]";
561 var id
=spans
[i
].getAttribute("id");
562 if (id
!= null) refs
["#"+id
] = n
;
566 noteholder
.parentNode
.removeChild(noteholder
);
568 // Process footnoterefs.
569 for (i
=0; i
<spans
.length
; i
++) {
570 if (spans
[i
].className
== "footnoteref") {
571 var href
= spans
[i
].getElementsByTagName("a")[0].getAttribute("href");
572 href
= href
.match(/#.*/)[0]; // Because IE return full URL.
575 "[<a href='#_footnote_" + n
+
576 "' title='View footnote' class='footnote'>" + n
+ "</a>]";
586 <body class=
"manpage">
592 <div class=
"sectionbody">
600 <h2 id=
"_synopsis">SYNOPSIS
</h2>
601 <div class=
"sectionbody">
602 <div class=
"paragraph"><p><em>guilt
</em> COMMAND [ARGS]
</p></div>
606 <h2 id=
"_description">DESCRIPTION
</h2>
607 <div class=
"sectionbody">
608 <div class=
"paragraph"><p>Andrew Morton originally developed a set of scripts for maintaining kernel
609 patches outside of any SCM tool. Others extended these into a suite called
610 quilt. The basic idea behind quilt is to maintain patches instead of
611 maintaining source files. Patches can be added, removed or reordered, and
612 they can be refreshed as you fix bugs or update to a new base revision.
613 quilt is very powerful, but it is not integrated with the underlying SCM
614 tools. This makes it difficult to visualize your changes.
</p></div>
615 <div class=
"paragraph"><p>Guilt allows one to use quilt functionality on top of a Git repository.
616 Changes are maintained as patches which are committed into Git. Commits can
617 be removed or reordered, and the underlying patch can be refreshed based on
618 changes made in the working directory. The patch directory can also be
619 placed under revision control, so you can have a separate history of changes
620 made to your patches.
</p></div>
624 <h2 id=
"_patches_directory">PATCHES DIRECTORY
</h2>
625 <div class=
"sectionbody">
626 <div class=
"paragraph"><p>In Guilt, all the patches are stored in .git/patches/$branch/, where $branch
627 is the name of the branch being worked on. This means that one can have a
628 independent series of patches for each branch present in the repository.
629 Each of these per-branch directories contains
3 special files:
</p></div>
630 <div class=
"paragraph"><p>guards: This file contains any guards that should be applied to the
631 series when pushing. It is only present when guards are selected.
</p></div>
632 <div class=
"paragraph"><p>series: This file contains a list of all the patch filenames relative to the
633 per-branch patch directory. Empty and commented out lines are ignored.
</p></div>
634 <div class=
"paragraph"><p>status: This file contains the state of the stack. What patches are applied.
</p></div>
638 <h2 id=
"_hooks">HOOKS
</h2>
639 <div class=
"sectionbody">
640 <div class=
"paragraph"><p>Any guilt operation may execute zero or more hook scripts which can be used
641 to run any housekeeping commands or even abort the execution of the command.
</p></div>
645 <h2 id=
"_hooks_directory">HOOKS DIRECTORY
</h2>
646 <div class=
"sectionbody">
647 <div class=
"paragraph"><p>Guilt follows the same basic design of hooks in Git itself. All Guilt hooks
648 are executable files (generally shell scripts, but they can be anything the
649 operating system can execute) in .git/hooks/guilt/.
</p></div>
650 <div class=
"paragraph"><p>The following hooks are supported:
</p></div>
651 <div class=
"dlist"><dl>
653 delete
<patch name
>
657 Executed when a patch is deleted from the patch series via
658 <a href=
"guilt-delete.html">guilt-delete(
1)
</a>.
665 <h2 id=
"_guilt_commands">GUILT COMMANDS
</h2>
666 <div class=
"sectionbody">
667 <div class=
"paragraph"><p>All commands can be called with or without a dash. e.g.
<em>guilt add
</em> or
668 <em>guilt-add
</em></p></div>
669 <div class=
"dlist"><dl>
671 <a href=
"guilt-add.html">guilt-add(
1)
</a>
675 guilt-add - Add a file to git and guilt.
679 <a href=
"guilt-applied.html">guilt-applied(
1)
</a>
683 guilt-applied - List applied patches.
687 <a href=
"guilt-branch.html">guilt-branch(
1)
</a>
691 guilt-branch - Branch the entire patch series.
695 <a href=
"guilt-commit.html">guilt-commit(
1)
</a>
699 guilt-commit - Commit specified number of patches.
703 <a href=
"guilt-delete.html">guilt-delete(
1)
</a>
707 guilt-delete - Delete a patch.
711 <a href=
"guilt-diff.html">guilt-diff(
1)
</a>
715 guilt-diff - Outputs various diffs.
719 <a href=
"guilt-export.html">guilt-export(
1)
</a>
723 guilt-export - Export a patch series (to be used by quilt).
727 <a href=
"guilt-files.html">guilt-files(
1)
</a>
731 guilt-files - Print the list of files that the topmost patch changes.
735 <a href=
"guilt-fold.html">guilt-fold(
1)
</a>
739 guilt-fold - Fold a specified patch into the topmost applied patch.
743 <a href=
"guilt-fork.html">guilt-fork(
1)
</a>
747 guilt-fork - Fork the topmost applied patch.
751 <a href=
"guilt-graph.html">guilt-graph(
1)
</a>
755 guilt-graph - Create a patch dependency graph.
759 <a href=
"guilt-guard.html">guilt-guard(
1)
</a>
763 guilt-guard - Assign guards to patches.
767 <a href=
"guilt-header.html">guilt-header(
1)
</a>
771 guilt-header - Print a patch header.
775 <a href=
"guilt-help.html">guilt-help(
1)
</a>
779 guilt-help - open man page of a guilt command.
783 <a href=
"guilt-import-commit.html">guilt-import-commit(
1)
</a>
787 guilt-import-commit - Import one or more commits as patches.
791 <a href=
"guilt-import.html">guilt-import(
1)
</a>
795 guilt-import - Import specified patch file.
799 <a href=
"guilt-init.html">guilt-init(
1)
</a>
803 guilt-init - Initialize guilt for use in a git repository.
807 <a href=
"guilt-new.html">guilt-new(
1)
</a>
811 guilt-new - Create a new patch.
815 <a href=
"guilt-next.html">guilt-next(
1)
</a>
819 guilt-next - Output the name of next patch to be pushed.
823 <a href=
"guilt-patchbomb.html">guilt-patchbomb(
1)
</a>
827 guilt-patchbomb - Email a series of commits interactively.
831 <a href=
"guilt-pop.html">guilt-pop(
1)
</a>
835 guilt-pop - Pop patches from the tree.
839 <a href=
"guilt-prev.html">guilt-prev(
1)
</a>
843 guilt-prev - Output name of second topmost applied patch.
847 <a href=
"guilt-push.html">guilt-push(
1)
</a>
851 guilt-push - Push patches onto the tree.
855 <a href=
"guilt-rebase.html">guilt-rebase(
1)
</a>
859 guilt-rebase - Rebase pushed patches.
863 <a href=
"guilt-refresh.html">guilt-refresh(
1)
</a>
867 guilt-refresh - Refresh topmost applied patch.
871 <a href=
"guilt-repair.html">guilt-repair(
1)
</a>
875 guilt-repair - Repair the repository state.
879 <a href=
"guilt-rm.html">guilt-rm(
1)
</a>
883 guilt-rm - Remove a file from the git tree and guilt.
887 <a href=
"guilt-select.html">guilt-select(
1)
</a>
891 guilt-select - Select guards to apply when pushing patches.
895 <a href=
"guilt-series.html">guilt-series(
1)
</a>
899 guilt-series - Print the stack of patches.
903 <a href=
"guilt-status.html">guilt-status(
1)
</a>
907 guilt-status - Print the status of files since the last refresh.
911 <a href=
"guilt-top.html">guilt-top(
1)
</a>
915 guilt-top - Output name of topmost applied patch.
919 <a href=
"guilt-unapplied.html">guilt-unapplied(
1)
</a>
923 guilt-unapplied - List all unapplied patches.
930 <h2 id=
"_author">Author
</h2>
931 <div class=
"sectionbody">
932 <div class=
"paragraph"><p>Written by Josef
"Jeff" Sipek
<<a href=
"mailto:jeffpc@josefsipek.net">jeffpc@josefsipek.net
</a>></p></div>
936 <h2 id=
"_documentation">Documentation
</h2>
937 <div class=
"sectionbody">
938 <div class=
"paragraph"><p>Documentation by Brandon Philips
<<a href=
"mailto:brandon@ifup.org">brandon@ifup.org
</a>> and Josef
"Jeff" Sipek
939 <<a href=
"mailto:jeffpc@josefsipek.net">jeffpc@josefsipek.net
</a>></p></div>
943 <h2 id=
"_guilt">GUILT
</h2>
944 <div class=
"sectionbody">
945 <div class=
"paragraph"><p>Part of the
<a href=
"guilt.html">guilt(
7)
</a> suite
946 (Generated for Guilt v0.35)
</p></div>
950 <div id=
"footnotes"><hr /></div>
952 <div id=
"footer-text">
953 Last updated
2010-
09-
18 16:
36:
15 EDT