'\" t .\" Title: git-footers .\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author] .\" Generator: DocBook XSL Stylesheets vsnapshot .\" Date: 02/20/2025 .\" Manual: Chromium depot_tools Manual .\" Source: depot_tools 8a5ec2b9 .\" Language: English .\" .TH "GIT\-FOOTERS" "1" "02/20/2025" "depot_tools 8a5ec2b9" "Chromium depot_tools Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" http://bugs.debian.org/507673 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- .\" disable hyphenation .nh .\" disable justification (adjust text to left margin only) .ad l .\" ----------------------------------------------------------------- .\" * MAIN CONTENT STARTS HERE * .\" ----------------------------------------------------------------- .SH "NAME" git-footers \- Extract meta\-information expressed as footers in a commit message\&. .SH "SYNOPSIS" .sp .nf \fIgit footers\fR [\-\-key FOOTER] REF \fIgit footers\fR [\-\-position | \-\-position\-ref | \-\-position\-num] REF .fi .sp .SH "DESCRIPTION" .sp \fBgit footers\fR extracts information included in commit messages as "footers", which are roughly like HTTP headers except they are at the end\&. For example, a commit might look like: .sp .if n \{\ .RS 4 .\} .nf This is a fancy commit message\&. .fi .if n \{\ .RE .\} .sp .if n \{\ .RS 4 .\} .nf Cr\-Commit\-Position: refs/heads/main@{#292272} Tech\-Debt\-Introduced: 17 nanoMSOffices .fi .if n \{\ .RE .\} .sp \fBgit footers\fR knows how to extract this information\&. .sp Footers are order\-independent and can appear more than once\&. Thus they are treated as a multimap\&. .SH "OPTIONS" .sp If no options are given, all footers are printed, with their names case\-normalized\&. .PP \-\-key FOOTER .RS 4 Extract all the headers associated with the given key, and print one per line\&. If there are no footers with this key, produces no output and exits successfully\&. .RE .PP \-\-position .RS 4 Extract the Chrome commit position from the footers\&. This first attempts to get the value of the \fBCr\-Commit\-Position\fR footer\&. If that doesn\(cqt exist then it tries a heuristic based on \fBGit\-Svn\-Id\fR\&. Output is in one of the following forms: .sp .if n \{\ .RS 4 .\} .nf refs/heads/main@{#292272} refs/branch\-heads/branchname .fi .if n \{\ .RE .\} .RE .PP \-\-position\-num .RS 4 Extracts and prints the Chrome commit position number only (292272 in the example above)\&. Exits with an error if one cannot be found\&. .RE .PP \-\-position\-ref .RS 4 Extracts and prints the Chrome commit position ref name only (\fBref/heads/main\fR or \fBrefs/branch\-heads/branchname\fR in the example above)\&. .RE .SH "EXAMPLE" .sp .sp .if n \{\ .RS 4 .\} .nf \fB$ git footers HEAD\fR Tech\-Debt\-Introduced: \-4 microMSOffices Tech\-Debt\-Introduced: 17 microMSOffices Cr\-Commit\-Position: refs/heads/main@{#292272} \fB$ git footers \-\-key Tech\-Debt\-Introduced HEAD\fR \-4 microMSOffices 17 microMSOffices \fB$ git footers \-\-position HEAD\fR refs/heads/main@{#292272} \fB$ git footers \-\-position\-num HEAD\fR 292272 \fB$ git footers \-\-position\-ref HEAD\fR refs/heads/main .fi .if n \{\ .RE .\} .sp .SH "SEE ALSO" .sp \fBgit-number\fR(1) .SH "CHROMIUM DEPOT_TOOLS" .sp Part of the chromium \fBdepot_tools\fR(7) suite\&. These tools are meant to assist with the development of chromium and related projects\&. Download the tools by checking out the \m[blue]\fBgit repository\fR\m[]\&\s-2\u[1]\d\s+2\&. .SH "NOTES" .IP " 1." 4 git repository .RS 4 \%https://chromium.googlesource.com/chromium/tools/depot_tools.git .RE