summaryrefslogtreecommitdiff
path: root/src/refs.c
diff options
context:
space:
mode:
authorBen Straub <bs@github.com>2014-02-03 15:06:47 -0800
committerBen Straub <bs@github.com>2014-02-03 15:06:47 -0800
commit86746b4b3ae1508c980a7adcdd088ab87a92af7a (patch)
tree57b70c25f4ff68113d505775c97db63bd17b2616 /src/refs.c
parenteec2761f068a0467ec5ddd140806e4cc9a6f4a58 (diff)
downloadlibgit2-86746b4b3ae1508c980a7adcdd088ab87a92af7a.tar.gz
Add reset tests for reflog
Diffstat (limited to 'src/refs.c')
-rw-r--r--src/refs.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/refs.c b/src/refs.c
index ca5f24ea2..3330c3a25 100644
--- a/src/refs.c
+++ b/src/refs.c
@@ -1032,8 +1032,10 @@ static int reference__update_terminal(
nesting+1, signature, log_message);
git_reference_free(ref);
} else {
+ /* If we're not moving the target, don't recreate the ref */
+ if (0 != git_oid_cmp(git_reference_target(ref), oid))
+ error = git_reference_create(NULL, repo, ref_name, oid, 1, signature, log_message);
git_reference_free(ref);
- error = git_reference_create(NULL, repo, ref_name, oid, 1, signature, log_message);
}
return error;