v2.12.3
Double check if a ref is missing locally before deleting from remote

Repository.getRefs sometimes does not return the correct list of refs in
the local repository (missing some). For this reason, we double check
using Repository.getRef. Without this check, the ref is deleted from the
remote by mistake.

The suspicion for the former function not returning the correct list is
primarily heavy garbage collection.

It isn't confirmed whether the latter function always returns the
correct value. Possibly a second check isn't enough, but it still
catches many occurences of the issue. The presumption is that getRef is
more atomic than getRefs.

Change-Id: I619c92c55e36a4b6719ef812bdddb2d3b2aab814
1 file changed
tree: 8bb304384cbfb01d5cef725d0ab5a07e2118c976
  1. .settings/
  2. src/
  3. .gitignore
  4. BUCK
  5. LICENSE