You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
60 lines
1.5 KiB
Plaintext
60 lines
1.5 KiB
Plaintext
git-squash-branch(1)
|
|
====================
|
|
|
|
NAME
|
|
----
|
|
git-squash-branch -
|
|
include::_git-squash-branch_desc.helper.txt[]
|
|
|
|
SYNOPSIS
|
|
--------
|
|
[verse]
|
|
'git squash-branch' [-m <message>]
|
|
|
|
DESCRIPTION
|
|
-----------
|
|
|
|
`git squash-branch` is a simple helper command. It takes all the commits on the
|
|
current branch from the 'merge_base' to HEAD, and reduces them to a single
|
|
commit. The new commit will contain a summary of all the commits which were
|
|
squashed, preceded by a header message indicating that it's the result of a
|
|
squash (or the message you pass on the command line.).
|
|
|
|
Squashing branches is useful when trying to rebase-update over branches which
|
|
were pushed to their upsteram (or committed by the 'Commit Queue'), and then
|
|
conflicting changes landed in upstream on top of the push/commit. If you know
|
|
that your branch was committed but linkgit:git-rebase-update[1] isn't able to
|
|
automatically clean it, you can squash the troublesome branch before `git
|
|
rebase-update`, and then when `git rebase-update` presents the conflict, you can
|
|
verify that the conflict diff is what you expected (and then skip it with
|
|
`git rebase --skip`).
|
|
|
|
OPTIONS
|
|
-------
|
|
|
|
-m <message>::
|
|
--message=<message>::
|
|
Optional message to use for the first line of the squashed commit. If omitted,
|
|
it defaults to "git squash commit for <branch>.".
|
|
|
|
EXAMPLE
|
|
-------
|
|
demo:1[]
|
|
|
|
|
|
include::_aliases.txt[]
|
|
|
|
----
|
|
[alias]
|
|
git squash = squash-branch
|
|
----
|
|
|
|
|
|
SEE ALSO
|
|
--------
|
|
linkgit:git-rebase-update[1]
|
|
|
|
include::_footer.txt[]
|
|
|
|
// vim: ft=asciidoc:
|