diff options
Diffstat (limited to 'Documentation/git-revert.txt')
-rw-r--r-- | Documentation/git-revert.txt | 65 |
1 files changed, 48 insertions, 17 deletions
diff --git a/Documentation/git-revert.txt b/Documentation/git-revert.txt index 69db498447..5e1175800a 100644 --- a/Documentation/git-revert.txt +++ b/Documentation/git-revert.txt @@ -7,7 +7,7 @@ git-revert - Revert an existing commit SYNOPSIS -------- -'git-revert' [--edit | --no-edit] [-n] <commit> +'git revert' [--edit | --no-edit] [-n] [-m parent-number] [-s] <commit> DESCRIPTION ----------- @@ -15,39 +15,70 @@ 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 gitlink:git-rev-parse[1]. + "SPECIFYING REVISIONS" section in linkgit:git-rev-parse[1]. --e|--edit:: - With this option, `git-revert` will let you edit the commit - message prior committing the revert. This is the default if +-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 + With this option, 'git-revert' will not start the commit message editor. --n|--no-commit:: +-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, but does not make the - commit. In addition, when this option is used, your - working tree does not have to match the HEAD commit. - The revert is done against the beginning state of your - working tree. + 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 working tree in a row. +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 <junkio@cox.net> +Written by Junio C Hamano <gitster@pobox.com> Documentation -------------- @@ -55,4 +86,4 @@ Documentation by Junio C Hamano and the git-list <git@vger.kernel.org>. GIT --- -Part of the gitlink:git[7] suite +Part of the linkgit:git[1] suite |