1quilt(1) General Commands Manual quilt(1)
2
3
4
6 quilt - tool to manage series of patches
7
8
10 quilt [-h] command [options]
11
12
14 Quilt is a tool to manage large sets of patches by keeping track of the
15 changes each patch makes. Patches can be applied, un-applied, re‐
16 freshed, etc. The key philosophical concept is that your primary output
17 is patches.
18
19 With quilt, all work occurs within a single directory tree. Commands
20 can be invoked from anywhere within the source tree. They are of the
21 form quilt cmd similar to CVS, svn or git commands. They can be abbre‐
22 viated as long as the specified part of the command is unique. All com‐
23 mands print some help text with quilt cmd -h.
24
25 Quilt manages a stack of patches. Patches are applied incrementally on
26 top of the base tree plus all preceding patches. They can be pushed on
27 top of the stack (quilt push), and popped off the stack (quilt pop).
28 Commands are available for querying the contents of the series file
29 (quilt series, see below), the contents of the stack (quilt applied,
30 quilt previous, quilt top), and the patches that are not applied at a
31 particular moment (quilt next, quilt unapplied). By default, most com‐
32 mands apply to the topmost patch on the stack.
33
34 Patch files are located in the patches sub-directory of the source tree
35 (see EXAMPLE OF WORKING TREE below). The QUILT_PATCHES environment
36 variable can be used to override this location. When not found in the
37 current directory, that subdirectory is searched recursively in the
38 parent directories (this is similar to the way git searches for its
39 configuration files). The patches directory may contain sub-directo‐
40 ries. It may also be a symbolic link instead of a directory.
41
42 A file called series contains a list of patch file names that defines
43 the order in which patches are applied. Unless there are means by which
44 series files can be generated automatically, it is usually provided
45 along with a set of patches. In this file, each patch file name is on a
46 separate line. Patch files are identified by path names that are rela‐
47 tive to the patches directory; patches may be in sub-directories below
48 this directory. Lines in the series file that start with a hash charac‐
49 ter (#) are ignored. Patch options, such as the strip level or whether
50 the patch is reversed, can be added after each patch file name. Options
51 are introduced by a space, separated by spaces, and follow the syntax
52 of the patch(1) options (e.g. -p2). Quilt records patch options auto‐
53 matically when a command supporting them is used. Without options,
54 strip level 1 is assumed. You can also add a comment after each patch
55 file name and options, introduced by a space followed by a hash charac‐
56 ter. When quilt adds, removes, or renames patches, it automatically up‐
57 dates the series file. Users of quilt can modify series files while
58 some patches are applied, as long as the applied patches remain in
59 their original order.
60
61 Different series files can be used to assemble patches in different
62 ways, corresponding for example to different development branches.
63
64 Before a patch is applied (or ``pushed on the stack''), copies of all
65 files the patch modifies are saved to the .pc/patch directory. The
66 patch is added to the list of currently applied patches (.pc/applied-
67 patches). Later when a patch is regenerated (quilt refresh), the backup
68 copies in .pc/patch are compared with the current versions of the files
69 in the source tree using GNU diff.
70
71 Documentation related to a patch can be put at the beginning of a patch
72 file. Quilt is careful to preserve all text that precedes the actual
73 patch when doing a refresh. (This is limited to patches in unified for‐
74 mat; see diff documentation).
75
76 The series file is looked up in the .pc directory, in the root of the
77 source tree, and in the patches directory. The first series file that
78 is found is used. This may also be a symbolic link, or a file with mul‐
79 tiple hard links. Usually, only one series file is used for a set of
80 patches, so the patches sub-directory is a convenient location.
81
82 The .pc directory and its sub-directories cannot be relocated, but it
83 can be a symbolic link. While patches are applied to the source tree,
84 this directory is essential for many operations, including taking
85 patches off the stack (quilt pop), and refreshing patches (quilt re‐
86 fresh). Files in the .pc directory are automatically removed when they
87 are no longer needed, so there is no need to clean up manually.
88
89
91 add [-P patch] {file} ...
92
93 Add one or more files to the topmost or named patch. Files must be
94 added to the patch before being modified. Files that are modified
95 by patches already applied on top of the specified patch cannot be
96 added.
97
98
99 -P patch
100
101 Patch to add files to.
102
103
104
105 annotate [-P patch] {file}
106
107 Print an annotated listing of the specified file showing which
108 patches modify which lines. Only applied patches are included.
109
110
111 -P patch
112
113 Stop checking for changes at the specified rather than the top‐
114 most patch.
115
116
117
118 applied [patch]
119
120 Print a list of applied patches, or all patches up to and including
121 the specified patch in the file series.
122
123
124
125 delete [-r] [--backup] [patch|-n]
126
127 Remove the specified or topmost patch from the series file. If the
128 patch is applied, quilt will attempt to remove it first. (Only the
129 topmost patch can be removed right now.)
130
131
132 -n Delete the next patch after topmost, rather than the specified
133 or topmost patch.
134
135
136 -r Remove the deleted patch file from the patches directory as
137 well.
138
139
140 --backup
141
142 Rename the patch file to patch~ rather than deleting it. Ig‐
143 nored if not used with `-r'.
144
145
146
147 diff [-p n|-p ab] [-u|-U num|-c|-C num] [--combine patch|-z] [-R] [-P
148 patch] [--snapshot] [--diff=utility] [--no-timestamps] [--no-index]
149 [--sort] [--color[=always|auto|never]] [file ...]
150
151 Produces a diff of the specified file(s) in the topmost or speci‐
152 fied patch. If no files are specified, all files that are modified
153 are included.
154
155
156 -p n
157 Create a -p n style patch (-p0 or -p1 are supported).
158
159
160 -p ab
161 Create a -p1 style patch, but use a/file and b/file as the
162 original and new filenames instead of the default dir.orig/file
163 and dir/file names.
164
165
166 -u, -U num, -c, -C num
167
168 Create a unified diff (-u, -U) with num lines of context. Cre‐
169 ate a context diff (-c, -C) with num lines of context. The num‐
170 ber of context lines defaults to 3.
171
172
173 --no-timestamps
174
175 Do not include file timestamps in patch headers.
176
177
178 --no-index
179
180 Do not output Index: lines.
181
182
183 -z Write to standard output the changes that have been made rela‐
184 tive to the topmost or specified patch.
185
186
187 -R Create a reverse diff.
188
189
190 -P patch
191
192 Create a diff for the specified patch. (Defaults to the top‐
193 most patch.)
194
195
196 --combine patch
197
198 Create a combined diff for all patches between this patch and
199 the patch specified with -P. A patch name of `-' is equivalent
200 to specifying the first applied patch.
201
202
203 --snapshot
204
205 Diff against snapshot (see `quilt snapshot -h').
206
207
208 --diff=utility
209
210 Use the specified utility for generating the diff. The utility
211 is invoked with the original and new file name as arguments.
212
213
214 --color[=always|auto|never]
215
216 Use syntax coloring (auto activates it only if the output is a
217 tty).
218
219
220 --sort
221 Sort files by their name instead of preserving the original or‐
222 der.
223
224
225
226 edit file ...
227
228 Edit the specified file(s) in $EDITOR after adding it (them) to the
229 topmost patch.
230
231
232
233 files [-v] [-a] [-l] [--combine patch] [patch]
234
235 Print the list of files that the topmost or specified patch
236 changes.
237
238
239 -a List all files in all applied patches.
240
241
242 -l Add patch name to output.
243
244
245 -v Verbose, more user friendly output.
246
247
248 --combine patch
249
250 Create a listing for all patches between this patch and the
251 topmost or specified patch. A patch name of `-' is equivalent
252 to specifying the first applied patch.
253
254
255
256
257 fold [-R] [-q] [-f] [-p strip-level]
258
259 Integrate the patch read from standard input into the topmost
260 patch: After making sure that all files modified are part of the
261 topmost patch, the patch is applied with the specified strip level
262 (which defaults to 1).
263
264
265 -R Apply patch in reverse.
266
267
268 -q Quiet operation.
269
270
271 -f Force apply, even if the patch has rejects. Unless in quiet
272 mode, apply the patch interactively: the patch utility may ask
273 questions.
274
275
276 -p strip-level
277
278 The number of pathname components to strip from file names when
279 applying patchfile.
280
281
282
283 fork [new_name]
284
285 Fork the topmost patch. Forking a patch means creating a verbatim
286 copy of it under a new name, and use that new name instead of the
287 original one in the current series. This is useful when a patch
288 has to be modified, but the original version of it should be pre‐
289 served, e.g. because it is used in another series, or for the his‐
290 tory. A typical sequence of commands would be: fork, edit, re‐
291 fresh.
292
293 If new_name is missing, the name of the forked patch will be the
294 current patch name, followed by `-2'. If the patch name already
295 ends in a dash-and-number, the number is further incremented (e.g.,
296 patch.diff, patch-2.diff, patch-3.diff).
297
298
299
300 graph [--all] [--reduce] [--lines[=num]] [--edge-labels=files] [-T ps]
301 [patch]
302
303 Generate a dot(1) directed graph showing the dependencies between
304 applied patches. A patch depends on another patch if both touch the
305 same file or, with the --lines option, if their modifications over‐
306 lap. Unless otherwise specified, the graph includes all patches
307 that the topmost patch depends on. When a patch name is specified,
308 instead of the topmost patch, create a graph for the specified
309 patch. The graph will include all other patches that this patch de‐
310 pends on, as well as all patches that depend on this patch.
311
312
313 --all
314 Generate a graph including all applied patches and their depen‐
315 dencies. (Unapplied patches are not included.)
316
317
318 --reduce
319
320 Eliminate transitive edges from the graph.
321
322
323 --lines[=num]
324
325 Compute dependencies by looking at the lines the patches mod‐
326 ify. Unless a different num is specified, two lines of context
327 are included.
328
329
330 --edge-labels=files
331
332 Label graph edges with the file names that the adjacent patches
333 modify.
334
335
336 -T ps
337 Directly produce a PostScript output file.
338
339
340
341 grep [-h|options] {pattern}
342
343 Grep through the source files, recursively, skipping patches and
344 quilt meta-information. If no filename argument is given, the whole
345 source tree is searched. Please see the grep(1) manual page for op‐
346 tions.
347
348
349 -h Print this help. The grep -h option can be passed after a dou‐
350 ble-dash (--). Search expressions that start with a dash can be
351 passed after a second double-dash (-- --).
352
353
354
355 header [-a|-r|-e] [--backup] [--strip-diffstat] [--strip-trailing-
356 whitespace] [patch]
357
358 Print or change the header of the topmost or specified patch.
359
360
361 -a, -r, -e
362
363 Append to (-a) or replace (-r) the exiting patch header, or
364 edit (-e) the header in $EDITOR. If none of these options is
365 given, print the patch header.
366
367
368 --strip-diffstat
369
370 Strip diffstat output from the header.
371
372
373 --strip-trailing-whitespace
374
375 Strip trailing whitespace at the end of lines of the header.
376
377
378 --backup
379
380 Create a backup copy of the old version of a patch as patch~.
381
382
383
384 import [-p num] [-R] [-P patch] [-f] [-d {o|a|n}] patchfile ...
385
386 Import external patches. The patches will be inserted following
387 the current top patch, and must be pushed after import to apply
388 them.
389
390
391 -p num
392
393 Number of directory levels to strip when applying (default=1)
394
395
396 -R
397
398 Apply patch in reverse.
399
400
401 -P patch
402
403 Patch filename to use inside quilt. This option can only be
404 used when importing a single patch.
405
406
407 -f Overwrite/update existing patches.
408
409
410 -d {o|a|n}
411
412 When overwriting in existing patch, keep the old (o), all (a),
413 or new (n) patch header. If both patches include headers, this
414 option must be specified. This option is only effective when -f
415 is used.
416
417
418
419 mail {--mbox file|--send} [-m text] [-M file] [--prefix prefix]
420 [--sender ...] [--from ...] [--to ...] [--cc ...] [--bcc ...] [--sub‐
421 ject ...] [--reply-to message] [--charset ...] [--signature file]
422 [first_patch [last_patch]]
423
424 Create mail messages from a specified range of patches, or all
425 patches in the series file, and either store them in a mailbox
426 file, or send them immediately. The editor is opened with a tem‐
427 plate for the introduction. Please see
428 /usr/share/doc/quilt/README.MAIL for details. When specifying a
429 range of patches, a first patch name of `-' denotes the first, and
430 a last patch name of `-' denotes the last patch in the series.
431
432
433 -m text
434
435 Text to use as the text in the introduction. When this option
436 is used, the editor will not be invoked, and the patches will
437 be processed immediately.
438
439
440 -M file
441
442 Like the -m option, but read the introduction from file.
443
444
445 --prefix prefix
446
447 Use an alternate prefix in the bracketed part of the subjects
448 generated. Defaults to `patch'.
449
450
451 --mbox file
452
453 Store all messages in the specified file in mbox format. The
454 mbox can later be sent using formail, for example.
455
456
457 --send
458
459 Send the messages directly.
460
461
462 --sender
463
464 The envelope sender address to use. The address must be of the
465 form `user@domain.name'. No display name is allowed.
466
467
468 --from, --subject
469
470 The values for the From and Subject headers to use. If no
471 --from option is given, the value of the --sender option is
472 used.
473
474
475 --to, --cc, --bcc
476
477 Append a recipient to the To, Cc, or Bcc header.
478
479
480 --charset
481
482 Specify a particular message encoding on systems which don't
483 use UTF-8 or ISO-8859-15. This character encoding must match
484 the one used in the patches.
485
486
487 --signature file
488
489 Append the specified signature to messages (defaults to ~/.sig‐
490 nature if found; use `-' for no signature).
491
492
493 --reply-to message
494
495 Add the appropriate headers to reply to the specified message.
496
497
498
499 new [-p n|-p ab] {patchname}
500
501 Create a new patch with the specified file name, and insert it af‐
502 ter the topmost patch. The name can be prefixed with a sub-direc‐
503 tory name, allowing for grouping related patches together.
504
505
506 -p n
507 Create a -p n style patch (-p0 or -p1 are supported).
508
509
510 -p ab
511 Create a -p1 style patch, but use a/file and b/file as the
512 original and new filenames instead of the default dir.orig/file
513 and dir/file names.
514
515 Quilt can be used in sub-directories of a source tree. It de‐
516 termines the root of a source tree by searching for a direc‐
517 tory above the current working directory. Create a directory
518 in the intended root directory if quilt chooses a top-level di‐
519 rectory that is too high up in the directory tree.
520
521
522
523 next [patch]
524
525 Print the name of the next patch after the specified or topmost
526 patch in the series file.
527
528
529
530 patches [-v] [--color[=always|auto|never]] {file} [files...]
531
532 Print the list of patches that modify any of the specified files.
533 (Uses a heuristic to determine which files are modified by unap‐
534 plied patches. Note that this heuristic is much slower than scan‐
535 ning applied patches.)
536
537
538 -v Verbose, more user friendly output.
539
540
541 --color[=always|auto|never]
542
543 Use syntax coloring (auto activates it only if the output is a
544 tty).
545
546
547
548 pop [-afRqv] [--refresh] [num|patch]
549
550 Remove patch(es) from the stack of applied patches. Without op‐
551 tions, the topmost patch is removed. When a number is specified,
552 remove the specified number of patches. When a patch name is spec‐
553 ified, remove patches until the specified patch end up on top of
554 the stack. Patch names may include the patches/ prefix, which
555 means that filename completion can be used.
556
557
558 -a Remove all applied patches.
559
560
561 -f Force remove. The state before the patch(es) were applied will
562 be restored from backup files.
563
564
565 -R Always verify if the patch removes cleanly; don't rely on time‐
566 stamp checks.
567
568
569 -q Quiet operation.
570
571
572 -v Verbose operation.
573
574
575 --refresh
576
577 Automatically refresh every patch before it gets unapplied.
578
579
580
581 previous [patch]
582
583 Print the name of the previous patch before the specified or top‐
584 most patch in the series file.
585
586
587
588 push [-afqvm] [--fuzz=N] [--merge[=merge|diff3]] [--leave-rejects]
589 [--color[=always|auto|never]] [--refresh] [num|patch]
590
591 Apply patch(es) from the series file. Without options, the next
592 patch in the series file is applied. When a number is specified,
593 apply the specified number of patches. When a patch name is speci‐
594 fied, apply all patches up to and including the specified patch.
595 Patch names may include the patches/ prefix, which means that file‐
596 name completion can be used.
597
598
599 -a Apply all patches in the series file.
600
601
602 -q Quiet operation.
603
604
605 -f Force apply, even if the patch has rejects.
606
607
608 -v Verbose operation.
609
610
611 --fuzz=N
612
613 Set the maximum fuzz factor (default: 2).
614
615
616 -m, --merge[=merge|diff3]
617
618 Merge the patch file into the original files (see patch(1)).
619
620
621 --leave-rejects
622
623 Leave around the reject files patch produced, even if the patch
624 is not actually applied.
625
626
627 --color[=always|auto|never]
628
629 Use syntax coloring (auto activates it only if the output is a
630 tty).
631
632
633 --refresh
634
635 Automatically refresh every patch after it was successfully ap‐
636 plied.
637
638
639
640 refresh [-p n|-p ab] [-u|-U num|-c|-C num] [-z[new_name]] [-f] [--no-
641 timestamps] [--no-index] [--diffstat] [--sort] [--backup] [--strip-
642 trailing-whitespace] [patch]
643
644 Refreshes the specified patch, or the topmost patch by default.
645 Documentation that comes before the actual patch in the patch file
646 is retained.
647
648 It is possible to refresh patches that are not on top. If any
649 patches on top of the patch to refresh modify the same files, the
650 script aborts by default. Patches can still be refreshed with -f.
651 In that case this script will print a warning for each shadowed
652 file, changes by more recent patches will be ignored, and only
653 changes in files that have not been modified by any more recent
654 patches will end up in the specified patch.
655
656
657 -p n
658 Create a -p n style patch (-p0 or -p1 supported).
659
660
661 -p ab
662 Create a -p1 style patch, but use a/file and b/file as the
663 original and new filenames instead of the default dir.orig/file
664 and dir/file names.
665
666
667 -u, -U num, -c, -C num
668
669 Create a unified diff (-u, -U) with num lines of context. Cre‐
670 ate a context diff (-c, -C) with num lines of context. The num‐
671 ber of context lines defaults to 3.
672
673
674 -z[new_name]
675
676 Create a new patch containing the changes instead of refreshing
677 the topmost patch. If no new name is specified, `-2' is added
678 to the original patch name, etc. (See the fork command.)
679
680
681 --no-timestamps
682
683 Do not include file timestamps in patch headers.
684
685
686 --no-index
687
688 Do not output Index: lines.
689
690
691 --diffstat
692
693 Add a diffstat section to the patch header, or replace the ex‐
694 isting diffstat section.
695
696
697 -f Enforce refreshing of a patch that is not on top.
698
699
700 --backup
701
702 Create a backup copy of the old version of a patch as patch~.
703
704
705 --sort
706 Sort files by their name instead of preserving the original or‐
707 der.
708
709
710 --strip-trailing-whitespace
711
712 Strip trailing whitespace at the end of lines.
713
714
715
716 remove [-P patch] {file} ...
717
718 Remove one or more files from the topmost or named patch. Files
719 that are modified by patches on top of the specified patch cannot
720 be removed.
721
722
723 -P patch
724
725 Remove named files from the named patch.
726
727
728
729 rename [-P patch] new_name
730
731 Rename the topmost or named patch.
732
733
734 -P patch
735
736 Patch to rename.
737
738
739
740 revert [-P patch] {file} ...
741
742 Revert uncommitted changes to the topmost or named patch for the
743 specified file(s): after the revert, 'quilt diff -z' will show no
744 differences for those files. Changes to files that are modified by
745 patches on top of the specified patch cannot be reverted.
746
747
748 -P patch
749
750 Revert changes in the named patch.
751
752
753
754 series [--color[=always|auto|never]] [-v]
755
756 Print the names of all patches in the series file.
757
758
759 --color[=always|auto|never]
760
761 Use syntax coloring (auto activates it only if the output is a
762 tty).
763
764
765 -v Verbose, more user friendly output.
766
767
768
769 setup [-d path-prefix] [-v] [--sourcedir dir] [--fuzz=N]
770 [--slow|--fast] {specfile|seriesfile}
771
772 Initializes a source tree from an rpm spec file or a quilt series
773 file.
774
775
776 -d Optional path prefix for the resulting source tree.
777
778
779 --sourcedir
780
781 Directory that contains the package sources. Defaults to `.'.
782
783
784 -v Verbose debug output.
785
786
787 --fuzz=N
788
789 Set the maximum fuzz factor (needs rpm 4.6 or later).
790
791
792 --slow
793 Use the original, slow method to process the spec file. In this
794 mode, rpmbuild generates a working tree in a temporary direc‐
795 tory while all its actions are recorded, and then everything is
796 replayed from scratch in the target directory.
797
798
799 --fast
800 Use the new, faster method to process the spec file. In this
801 mode, rpmbuild is told to generate a working tree directly in
802 the target directory. This is now the default.
803
804
805
806 snapshot [-d]
807
808 Take a snapshot of the current working state. After taking the
809 snapshot, the tree can be modified in the usual ways, including
810 pushing and popping patches. A diff against the tree at the moment
811 of the snapshot can be generated with `quilt diff --snapshot'.
812
813
814 -d Only remove current snapshot.
815
816
817
818 top
819
820 Print the name of the topmost patch on the current stack of applied
821 patches.
822
823
824
825 unapplied [patch]
826
827 Print a list of patches that are not applied, or all patches that
828 follow the specified patch in the series file.
829
830
831
832 upgrade
833
834 Upgrade the meta-data in a working tree from an old version of
835 quilt to the current version. This command is only needed when the
836 quilt meta-data format has changed, and the working tree still con‐
837 tains old-format meta-data. In that case, quilt will request to run
838 `quilt upgrade'.
839
840
841
843 --trace
844
845 Runs the command in bash trace mode (-x). For internal debug‐
846 ging.
847
848
849 --quiltrc file
850
851 Use the specified configuration file instead of ~/.quiltrc (or
852 /etc/quilt.quiltrc if ~/.quiltrc does not exist). See the pdf
853 documentation for details about its possible contents. The
854 special value "-" causes quilt not to read any configuration
855 file.
856
857
858 --version
859
860 Print the version number and exit immediately.
861
862
864 The exit status is 0 if the sub-command was successfully executed, and
865 1 in case of error.
866
867 An exit status of 2 denotes that quilt did not do anything to complete
868 the command. This happens in particular when asking to push when the
869 whole stack is already pushed, or asking to pop when the whole stack is
870 already popped. This behavior is intended to ease the scripting around
871 quilt.
872
873
875 work/
876 ├── patches/
877 │ ├── series (list of patches to apply)
878 │ ├── patch1.diff (one particular patch)
879 │ ├── patch2.diff
880 │ └── ...
881 ├── .pc/
882 │ ├── .quilt_patches (content of QUILT_PATCHES)
883 │ ├── .quilt_series (content of QUILT_SERIES)
884 │ ├── patch1.diff/ (copy of patched files)
885 │ │ └── ...
886 │ ├── patch2.diff/
887 │ │ └── ...
888 │ └── ...
889 └── ...
890
891 The patches/ directory is precious as it contains all your patches as
892 well as the order in which it should be applied.
893
894 The .pc/ directory contains some metadata about the current state of
895 your patch series. Changing its content is not advised. This directory
896 can usually be regenerated from the initial files and the content of
897 the patches/ directory (provided that all patches were regenerated be‐
898 fore the removal).
899
900
902 Please refer to the pdf documentation for a full example of use.
903
904
906 Upon startup, quilt evaluates the file .quiltrc in the user's home di‐
907 rectory, /etc/quilt.quiltrc if the former file does not exist, or the
908 file specified with the --quiltrc option. This file is a regular bash
909 script. Default options can be passed to any COMMAND by defining a
910 QUILT_${COMMAND}_ARGS variable. For example,
911 QUILT_DIFF_ARGS="--color=auto" causes the output of quilt diff to be
912 syntax colored when writing to a terminal.
913
914 In addition to that, quilt recognizes the following variables:
915
916
917 EDITOR
918
919 The program to run to edit files. If it isn't redefined in the
920 configuration file, $EDITOR as defined in the environment will be
921 used.
922
923
924 LESS
925
926 The arguments used to invoke the pager. Inherits the existing
927 value of $LESS if LESS is already set in the environment, otherwise
928 defaults to "-FRSX".
929
930
931 QUILT_DIFF_OPTS
932
933 Additional options that quilt shall pass to GNU diff when generat‐
934 ing patches. A useful setting for C source code is "-p", which
935 causes GNU diff to show in the resulting patch which function a
936 change is in.
937
938
939 QUILT_PATCH_OPTS
940
941 Additional options that quilt shall pass to GNU patch when applying
942 patches. For example, recent versions of GNU patch support the
943 "--reject-format=unified" option for generating reject files in
944 unified diff style (older patch versions used "--unified-reject-
945 files" for that).
946
947 You may also want to add the "-E" option if you have issues with
948 quilt not deleting empty files when you think it should. The docu‐
949 mentation of GNU patch says that "normally this option is unneces‐
950 sary", but when patch is in POSIX mode or if the patch format
951 doesn't allow to distinguish empty files from deleted files, patch
952 deletes empty files only if the -E option is given. Beware that
953 when passing -E to patch, quilt will no longer be able to deal with
954 empty files, which is why using -E is no longer the default.
955
956
957 QUILT_DIFFSTAT_OPTS
958
959 Additional options that quilt shall pass to diffstat when generat‐
960 ing patch statistics. For example, "-f0" can be used for an alter‐
961 native output format. Recent versions of diffstat also support al‐
962 ternative rounding methods ("-r1", "-r2").
963
964
965 QUILT_PC
966
967 The location of backup files and any other data relating to the
968 current state of the working directory from quilt's perspective.
969 Defaults to ".pc".
970
971
972 QUILT_PATCHES
973
974 The location of patch files, defaulting to "patches".
975
976
977 QUILT_SERIES
978
979 The name of the series file, defaulting to "series". Unless an ab‐
980 solute path is used, the search algorithm described above applies.
981
982
983 QUILT_PATCHES_PREFIX
984
985 If set to anything, quilt will prefix patch names it prints with
986 their directory (QUILT_PATCHES).
987
988
989 QUILT_NO_DIFF_INDEX
990
991 By default, quilt prepends an Index: line to the patches it gener‐
992 ates. If this variable is set to anything, no line is prepended.
993 This is a shortcut to adding --no-index to both QUILT_DIFF_ARGS and
994 QUILT_REFRESH_ARGS.
995
996
997 QUILT_NO_DIFF_TIMESTAMPS
998
999 By default, quilt includes timestamps in headers when generating
1000 patches. If this variable is set to anything, no timestamp will be
1001 included. This is a shortcut to adding --no-timestamps to both
1002 QUILT_DIFF_ARGS and QUILT_REFRESH_ARGS.
1003
1004
1005 QUILT_PAGER
1006
1007 The pager quilt shall use for commands which produce paginated out‐
1008 put. If unset, the values of GIT_PAGER or PAGER is used. If none
1009 of these variables is set, "less -R" is used. An empty value indi‐
1010 cates that no pager should be used.
1011
1012
1013 QUILT_COLORS
1014
1015 By default, quilt uses its predefined color set in order to be more
1016 comprehensible when distiguishing various types of patches, eg.
1017 applied/unapplied, failed, etc.
1018
1019 To override one or more color settings, set the QUILT_COLORS vari‐
1020 able in following syntax - colon (:) separated list of elements,
1021 each being of the form <format name>=<foreground color>[;<back‐
1022 ground color>]
1023
1024 Format names with their respective default values are listed below,
1025 along with their usage(s). Color codes(values) are standard bash
1026 coloring escape codes. See more at
1027 http://tldp.org/LDP/abs/html/colorizing.html#AEN20229
1028
1029
1030 diff_hdr Used in 'quilt diff' to color the index line. Defaults to
1031 32 (green).
1032
1033
1034 diff_add Used in 'quilt diff' to color added lines. Defaults to 36
1035 (azure).
1036
1037
1038 diff_mod Used in 'quilt diff' to color modified lines. Defaults to
1039 35 (purple).
1040
1041
1042 diff_rem Used in 'quilt diff' to color removed lines. Defaults to
1043 35 (purple).
1044
1045
1046 diff_hunk Used in 'quilt diff' to color hunk header. Defaults to 33
1047 (brown/orange).
1048
1049
1050 diff_ctx Used in 'quilt diff' to color the text after end of hunk
1051 header (diff --show-c-function generates this). Defaults
1052 to 35 (purple).
1053
1054
1055 diff_cctx Used in 'quilt diff' to color the 15-asterisk sequence
1056 before or after a hunk. Defaults to 33 (brown/orange).
1057
1058
1059 patch_fuzz
1060 Used in 'quilt push' to color the patch fuzz information.
1061 Defaults to 35 (purple).
1062
1063
1064 patch_fail
1065 Used in 'quilt push' to color the fail message. Defaults
1066 to 31 (red).
1067
1068
1069 series_app
1070 Used in 'quilt series' and 'quilt patches' to color the
1071 applied patch names. Defaults to 32 (green).
1072
1073
1074 series_top
1075 Used in 'quilt series' and 'quilt patches' to color the
1076 top patch name. Defaults to 33 (brown/orange).
1077
1078
1079 series_una
1080 Used in 'quilt series' and 'quilt patches' to color unap‐
1081 plied patch names. Defaults to 0 (no special color).
1082
1083 In addition, the clear format name is used to turn off special col‐
1084 oring. Its value is 0; it is not advised to modify it.
1085
1086 The content of QUILT_COLORS supersedes default values. So the value
1087 diff_hdr=35;44 will get you the diff headers in magenta over blue
1088 instead of the default green over unchanged background. For that,
1089 add the following content to ~/.quiltrc (or /etc/quilt.quiltrc):
1090
1091 QUILT_DIFF_ARGS="--color"
1092 QUILT_COLORS='diff_hdr=35;44'
1093
1094
1096 Quilt started as a series of scripts written by Andrew Morton (patch-
1097 scripts). Based on Andrew's ideas, Andreas Gruenbacher completely
1098 rewrote the scripts, with the help of several other contributors (see
1099 AUTHORS file in the distribution).
1100
1101 This man page was written by Martin Quinson, based on information found
1102 in the pdf documentation, and in the help messages of each commands.
1103
1104
1106 The pdf documentation, which should be under
1107 /usr/share/doc/quilt/quilt.pdf. Note that some distributors compress
1108 this file. zxpdf(1) can be used to display compressed pdf files.
1109
1110 diff(1), patch(1), guards(1).
1111
1112
1113
1114quilt Dec 17, 2013 quilt(1)