'\" t
.\"     Title: git-fmt-merge-msg
.\"    Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author]
.\" Generator: DocBook XSL Stylesheets v1.79.2 <http://docbook.sf.net/>
.\"      Date: 2025-10-26
.\"    Manual: Git Manual
.\"    Source: Git 2.51.2.535.g419c72cb8a
.\"  Language: English
.\"
.TH "GIT\-FMT\-MERGE\-MSG" "1" "2025-10-26" "Git 2\&.51\&.2\&.535\&.g419c72" "Git 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-fmt-merge-msg \- Produce a merge commit message
.SH "SYNOPSIS"
.sp
.nf
\fIgit fmt\-merge\-msg\fR [\-m <message>] [\-\-into\-name <branch>] [\-\-log[=<n>] | \-\-no\-log]
\fIgit fmt\-merge\-msg\fR [\-m <message>] [\-\-log[=<n>] | \-\-no\-log] \-F <file>
.fi
.SH "DESCRIPTION"
.sp
Takes the list of merged objects on stdin and produces a suitable commit message to be used for the merge commit, usually to be passed as the \fI<merge\-message>\fR argument of \fIgit merge\fR\&.
.sp
This command is intended mostly for internal use by scripts automatically invoking \fIgit merge\fR\&.
.SH "OPTIONS"
.PP
\-\-log[=<n>]
.RS 4
In addition to branch names, populate the log message with one\-line descriptions from the actual commits that are being merged\&. At most <n> commits from each merge parent will be used (20 if <n> is omitted)\&. This overrides the
\fBmerge\&.log\fR
configuration variable\&.
.RE
.PP
\-\-no\-log
.RS 4
Do not list one\-line descriptions from the actual commits being merged\&.
.RE
.PP
\-\-summary, \-\-no\-summary
.RS 4
Synonyms to \-\-log and \-\-no\-log; these are deprecated and will be removed in the future\&.
.RE
.PP
\-m <message>, \-\-message <message>
.RS 4
Use <message> instead of the branch names for the first line of the log message\&. For use with
\fB\-\-log\fR\&.
.RE
.PP
\-\-into\-name <branch>
.RS 4
Prepare the merge message as if merging to the branch
\fI<branch>\fR, instead of the name of the real branch to which the merge is made\&.
.RE
.PP
\-F <file>, \-\-file <file>
.RS 4
Take the list of merged objects from <file> instead of stdin\&.
.RE
.SH "CONFIGURATION"
.PP
\fBmerge\&.branchdesc\fR
.RS 4
In addition to branch names, populate the log message with the branch description text associated with them\&. Defaults to false\&.
.RE
.PP
\fBmerge\&.log\fR
.RS 4
In addition to branch names, populate the log message with at most the specified number of one\-line descriptions from the actual commits that are being merged\&. Defaults to false, and true is a synonym for 20\&.
.RE
.PP
\fBmerge\&.suppressDest\fR
.RS 4
By adding a glob that matches the names of integration branches to this multi\-valued configuration variable, the default merge message computed for merges into these integration branches will omit "into
\fI<branch\-name>\fR" from its title\&.
.sp
An element with an empty value can be used to clear the list of globs accumulated from previous configuration entries\&. When there is no
\fBmerge\&.suppressDest\fR
variable defined, the default value of
\fBmaster\fR
is used for backward compatibility\&.
.RE
.PP
merge\&.summary
.RS 4
Synonym to
\fBmerge\&.log\fR; this is deprecated and will be removed in the future\&.
.RE
.SH "EXAMPLES"
.sp
.if n \{\
.RS 4
.\}
.nf
$ git fetch origin master
$ git fmt\-merge\-msg \-\-log <$GIT_DIR/FETCH_HEAD
.fi
.if n \{\
.RE
.\}
.sp
Print a log message describing a merge of the "master" branch from the "origin" remote\&.
.SH "SEE ALSO"
.sp
\fBgit-merge\fR(1)
.SH "GIT"
.sp
Part of the \fBgit\fR(1) suite
