diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/lib/RefUpdate.java b/org.eclipse.jgit/src/org/eclipse/jgit/lib/RefUpdate.java index 394af2953..fcf38e695 100644 --- a/org.eclipse.jgit/src/org/eclipse/jgit/lib/RefUpdate.java +++ b/org.eclipse.jgit/src/org/eclipse/jgit/lib/RefUpdate.java @@ -598,7 +598,8 @@ private Result updateImpl(final RevWalk walk, final Store store) RevObject newObj; RevObject oldObj; - if (getRefDatabase().isNameConflicting(getName())) + // don't make expensive conflict check if this is an existing Ref + if (oldValue == null && getRefDatabase().isNameConflicting(getName())) return Result.LOCK_FAILURE; try { if (!tryLock(true))