From 82433cdf4d888639cecddeca162d619cf370417e Mon Sep 17 00:00:00 2001 From: Jonathan Nieder Date: Tue, 22 Nov 2011 05:17:36 -0600 Subject: revert: write REVERT_HEAD pseudoref during conflicted revert When conflicts are encountered while reverting a commit, it can be handy to have the name of that commit easily available. For example, to produce a copy of the patch to refer to while resolving conflicts: $ git revert 2eceb2a8 error: could not revert 2eceb2a8... awesome, buggy feature $ git show -R REVERT_HEAD >the-patch $ edit $(git diff --name-only) Set a REVERT_HEAD pseudoref when "git revert" does not make a commit, for cases like this. This also makes it possible for scripts to distinguish between a revert that encountered conflicts and other sources of an unmerged index. After successfully committing, resetting with "git reset", or moving to another commit with "git checkout" or "git reset", the pseudoref is no longer useful, so remove it. Signed-off-by: Jonathan Nieder Signed-off-by: Junio C Hamano --- branch.c | 1 + 1 file changed, 1 insertion(+) (limited to 'branch.c') diff --git a/branch.c b/branch.c index d8098762f6..025a97be02 100644 --- a/branch.c +++ b/branch.c @@ -241,6 +241,7 @@ void create_branch(const char *head, void remove_branch_state(void) { unlink(git_path("CHERRY_PICK_HEAD")); + unlink(git_path("REVERT_HEAD")); unlink(git_path("MERGE_HEAD")); unlink(git_path("MERGE_RR")); unlink(git_path("MERGE_MSG")); -- cgit v1.2.3