branches: propagate EEXISTS upon creation

This commit is contained in:
nulltoken 2012-10-11 14:08:32 +02:00
parent 3548fcf562
commit 62993b6158
2 changed files with 5 additions and 6 deletions

View File

@ -77,12 +77,11 @@ int git_branch_create(
if (git_buf_joinpath(&canonical_branch_name, GIT_REFS_HEADS_DIR, branch_name) < 0)
goto cleanup;
if (git_reference_create_oid(&branch, repository,
git_buf_cstr(&canonical_branch_name), git_object_id(commit), force) < 0)
goto cleanup;
error = git_reference_create_oid(&branch, repository,
git_buf_cstr(&canonical_branch_name), git_object_id(commit), force);
if (!error)
*ref_out = branch;
error = 0;
cleanup:
git_object_free(commit);

View File

@ -50,7 +50,7 @@ void test_refs_branches_create__can_not_create_a_branch_if_its_name_collide_with
{
retrieve_known_commit(&target, repo);
cl_git_fail(git_branch_create(&branch, repo, "br2", target, 0));
cl_assert_equal_i(GIT_EEXISTS, git_branch_create(&branch, repo, "br2", target, 0));
}
void test_refs_branches_create__can_force_create_over_an_existing_branch(void)