I'm not quite sold on this naming convention. `_if` implies that I'll be able to pass in a predicate. Given that this is actually an equality test, maybe `git_reference_create_if_match` or `git_reference_interlocked_create`? This seems like a standard concurrency idiom, is there a more standard name we could use?