sqitch-plan(3pm)
π NAME π
sqitch-plan β show planned database changes, bestie. It's giving let me see the plan energy. π
β¨ SYNOPSIS β¨
sqitch plan [options] [<database>]
π¦ DESCRIPTION π¦
okay so the plan command shows you info about the planned changes for a database target. By default it shows all the changes for the plan, but you can also search for changes matching regular expressions and limit the results. I mean, sure, you could just cat your plan file, but this is way more fun. fr fr. π
The <database> parameter specifies the database for which the plan should be read, and it can also be specified as the --target option. It can be a target name, a URI, an engine name, or a plan file path. All of those. So flexible. iconic.
πΈ OPTIONS πΈ
-t,--targetβ the target database, the plan for which should be read. This one should be the name of a target in the configuration.--eventβ filter by event type. You can pass this more than once, go off. The allowed values are:deployrevert
--change-pattern,--changeβ a regular expression to match against change names.--planner-pattern,--plannerβ a regular expression to match against planner names.--format,-fβ the format to use. May be one of:fulllongmediumshortonelinerawformat:<string>
See "Formats" below for the deets on each one. Defaults to medium. β¨
--date-format,--dateβ format to use for timestamps. Defaults toiso. Allowed values:isoiso8601β shows timestamps in ISO-8601 format.rfcrfc2822β show timestamps in RFC-2822 format.fulllongmediumshortβ show timestamps in the specified format length, using the system locale'sLC_TIMEcategory.rawβ show timestamps in raw format, which is strict ISO-8601 in the UTC time zone.strftime:$stringβ show timestamps using an arbitrarystrftimepattern. See "strftime Paterns" in DateTime for comprehensive documentation of supported patterns.cldr:$patternβ show timestamps using an arbitrarycldrpattern. See "CLDR Paterns" in DateTime for comprehensive documentation of supported patterns.
--max-count,-nβ limit the number of changes to output. Keep it cute, keep it short. βοΈ--skipβ skip the specified number of changes before starting to show the output.--reverseβ output the changes in reverse order.--no-reverseβ do not output the changes in reverse order.--headersβ output headers describing the project and plan file. Enabled by default.--no-headersβ do not output headers describing the project and plan file.--colorβ show colored output. The value may be one of:auto(the default)alwaysnever
--no-colorβ turn off colored output. It is the same as--color never.--abbrevβ instead of showing the full 40-byte hexadecimal change ID, show only a partial prefix the specified number of characters long.--onelineβ shorthand for--format oneline --abbrev 6. A little treat. π
π§ CONFIGURATION VARIABLES π§
plan.formatβ output format to use. Supports the same values as--format.plan.date_formatβ format to use for timestamps. Supports the same values as the--date-formatoption.plan.colorβ output colors. Supports the same values as the--coloroption.
π FORMATS π
There are several built-in formats, and you can also emit data in a custom format:<string> format. Here are the details of the built-in formats, bestie, read carefully:
oneline
<change id> <event type> <change name> <title line> <tags>
This is designed to be as compact as possible.
short
<event type> <change id>
Name: <change name>
Planner: <planner>
<title line>
medium
<event type> <change id>
Name: <change name>
Planner: <planner>
Date: <commit date>
<full change note>
long
<event type> <change id> <tags>
Name: <change name>
Project: <change name>
Planner: <planner>
<full change note>
full
<event type> <change id> <tags>
Event: <event type>
Name: <change name>
Project: <change name>
Requires: <required changes>
Conflicts: <conflicting changes>
Planner: <planner>
Planned: <plan date>
<full change note>
raw
<event type> <change id> <tags>
name <change name>
project <project name>
requires <required changes>
conflicts <conflicting changes>
planner <planner>
planned <raw plan date>
<full change note>
Suitable for parsing: the change ID is displayed in full, without regard to the value of --abbrev; dates are formatted raw (strict ISO-8601 format in the UTC time zone); and all labels are lowercased and unlocalized. So clean. So parseable. π§Ό
format:<string>
The format:<string> format lets you specify which information you want to show. It works a little bit like printf format and a little bit like Git plan format. For example, this format:
format:The planner of %h was %{name}p%vThe title was >>%s<<%v
Would show something like this:
The planner of f26a3s was Tom Lane
The title was >>We really need to get this right.<<
The placeholders are:
- %H: Event change ID
- %h: Event change ID (respects
--abbrev) - %n: Event change name
- %o: Event change project name
- %F: Deploy file name
%($len)h: abbreviated change of length $len- %e: Event type (deploy, revert, fail)
- %l: Localized lowercase event type label
- %L: Localized title case event type label
- %c: Change planner name and email address
%{name}p: Change planner name%{email}p: Change planner email address%{date}p: plan date (respects--date-format)%{date:rfc}p: plan date, RFC2822 format%{date:iso}p: plan date, ISO-8601 format%{date:full}p: plan date, full format%{date:long}p: plan date, long format%{date:medium}p: plan date, medium format%{date:short}p: plan date, short format%{date:cldr:$pattern}p: plan date, formatted with custom CLDR pattern%{date:strftime:$pattern}p: plan date, formatted with custom strftime pattern- %t: Comma-delimited list of tags
%{$sep}t: list of tags delimited by $sep- %T: Parenthesized list of comma-delimited tags
%{$sep}T: Parenthesized list of tags delimited by $sep- %s: Subject (a.k.a. title line)
- %r: Comma-delimited list of required changes
%{$sep}r: list of required changes delimited by $sep- %R: Localized label and list of comma-delimited required changes
%{$sep}R: Localized label and list of required changes delimited by $sep- %x: Comma-delimited list of conflicting changes
%{$sep}x: list of conflicting changes delimited by $sep- %X: Localized label and list of comma-delimited conflicting changes
%{$sep}X: Localized label and list of conflicting changes delimited by $sep- %b: Body
- %B: Raw body (unwrapped subject and body)
%{$prefix}B: Raw body with $prefix prefixed to every line%{event}_Localized label for "event"%{change}_Localized label for "change"%{planner}_Localized label for "planner"%{by}_Localized label for "by"%{date}_Localized label for "date"%{planned}_Localized label for "planned"%{name}_Localized label for "name"%{project}_Localized label for "project"%{email}_Localized label for "email"%{requires}_Localized label for "requires"%{conflicts}_Localized label for "conflicts"- %v vertical space (newline)
%{$color}C: An ANSI color: black, red, green, yellow, reset, etc.%{:event}C: An ANSI color based on event type (green deploy, blue revert, red fail)%{$attribute}a: The raw attribute name and value, if it exists and has a value
π SQITCH π
Part of the sqitch suite. You're in good company, bestie. π«Ά
that's the whole page, no notes. this manual page was written for perl v5.40.1 and it's dated 2026-07-26. slay, go plan something. πβ¨π
π¦ where this page comes from
- ubuntu stonking: sqitch 1.6.1-2 Β· MIT
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms