mirror of
https://github.com/git/git
synced 2024-08-25 02:35:46 +00:00
![Boyd Stephen Smith Jr](/assets/img/avatar_default.png)
Signed-off-by: Boyd Stephen Smith Jr <bss@iguanasuicide.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
90 lines
2.8 KiB
Plaintext
90 lines
2.8 KiB
Plaintext
git-revert(1)
|
|
=============
|
|
|
|
NAME
|
|
----
|
|
git-revert - Revert an existing commit
|
|
|
|
SYNOPSIS
|
|
--------
|
|
'git revert' [--edit | --no-edit] [-n] [-m parent-number] [-s] <commit>
|
|
|
|
DESCRIPTION
|
|
-----------
|
|
Given one existing commit, revert the change the patch introduces, and record a
|
|
new commit that records it. This requires your working tree to be clean (no
|
|
modifications from the HEAD commit).
|
|
|
|
Note: 'git revert' is used to record a new commit to reverse the
|
|
effect of an earlier commit (often a faulty one). If you want to
|
|
throw away all uncommitted changes in your working directory, you
|
|
should see linkgit:git-reset[1], particularly the '--hard' option. If
|
|
you want to extract specific files as they were in another commit, you
|
|
should see linkgit:git-checkout[1], specifically the 'git checkout
|
|
<commit> -- <filename>' syntax. Take care with these alternatives as
|
|
both will discard uncommitted changes in your working directory.
|
|
|
|
OPTIONS
|
|
-------
|
|
<commit>::
|
|
Commit to revert.
|
|
For a more complete list of ways to spell commit names, see
|
|
"SPECIFYING REVISIONS" section in linkgit:git-rev-parse[1].
|
|
|
|
-e::
|
|
--edit::
|
|
With this option, 'git-revert' will let you edit the commit
|
|
message prior to committing the revert. This is the default if
|
|
you run the command from a terminal.
|
|
|
|
-m parent-number::
|
|
--mainline parent-number::
|
|
Usually you cannot revert a merge because you do not know which
|
|
side of the merge should be considered the mainline. This
|
|
option specifies the parent number (starting from 1) of
|
|
the mainline and allows revert to reverse the change
|
|
relative to the specified parent.
|
|
+
|
|
Reverting a merge commit declares that you will never want the tree changes
|
|
brought in by the merge. As a result, later merges will only bring in tree
|
|
changes introduced by commits that are not ancestors of the previously
|
|
reverted merge. This may or may not be what you want.
|
|
+
|
|
See the link:howto/revert-a-faulty-merge.txt[revert-a-faulty-merge How-To] for
|
|
more details.
|
|
|
|
--no-edit::
|
|
With this option, 'git-revert' will not start the commit
|
|
message editor.
|
|
|
|
-n::
|
|
--no-commit::
|
|
Usually the command automatically creates a commit with
|
|
a commit log message stating which commit was
|
|
reverted. This flag applies the change necessary
|
|
to revert the named commit to your working tree
|
|
and the index, but does not make the commit. In addition,
|
|
when this option is used, your index does not have to match
|
|
the HEAD commit. The revert is done against the
|
|
beginning state of your index.
|
|
+
|
|
This is useful when reverting more than one commits'
|
|
effect to your index in a row.
|
|
|
|
-s::
|
|
--signoff::
|
|
Add Signed-off-by line at the end of the commit message.
|
|
|
|
|
|
Author
|
|
------
|
|
Written by Junio C Hamano <gitster@pobox.com>
|
|
|
|
Documentation
|
|
--------------
|
|
Documentation by Junio C Hamano and the git-list <git@vger.kernel.org>.
|
|
|
|
GIT
|
|
---
|
|
Part of the linkgit:git[1] suite
|