예제 #1
0
파일: delete.c 프로젝트: 0CV0/libgit2
void test_refs_branches_delete__can_delete_a_branch_when_HEAD_is_orphaned(void)
{
	git_reference *branch;

	make_head_orphaned(repo, NON_EXISTING_HEAD);

	cl_git_pass(git_branch_lookup(&branch, repo, "br2", GIT_BRANCH_LOCAL));
	cl_git_pass(git_branch_delete(branch));
	git_reference_free(branch);
}
예제 #2
0
파일: ishead.c 프로젝트: ralpheav/PM_GIT
void test_refs_branches_ishead__can_properly_handle_orphaned_HEAD(void)
{
	git_repository_free(repo);

	repo = cl_git_sandbox_init("testrepo.git");

	make_head_orphaned(repo, NON_EXISTING_HEAD);

	cl_git_pass(git_reference_lookup(&branch, repo, "refs/heads/master"));

	cl_assert_equal_i(false, git_branch_is_head(branch));

	cl_git_sandbox_cleanup();
	repo = NULL;
}
예제 #3
0
파일: soft.c 프로젝트: 0CV0/libgit2
void test_reset_soft__resetting_against_an_orphaned_head_repo_makes_the_head_no_longer_orphaned(void)
{
	git_reference *head;

	retrieve_target_from_oid(&target, repo, KNOWN_COMMIT_IN_BARE_REPO);

	make_head_orphaned(repo, NON_EXISTING_HEAD);

	cl_assert_equal_i(true, git_repository_head_orphan(repo));

	cl_git_pass(git_reset(repo, target, GIT_RESET_SOFT));

	cl_assert_equal_i(false, git_repository_head_orphan(repo));

	cl_git_pass(git_reference_lookup(&head, repo, NON_EXISTING_HEAD));
	cl_assert_equal_i(0, git_oid_streq(git_reference_target(head), KNOWN_COMMIT_IN_BARE_REPO));

	git_reference_free(head);
}
예제 #4
0
파일: head.c 프로젝트: jmendeth/node-gitteh
void test_checkout_head__checking_out_an_orphaned_head_returns_GIT_EORPHANEDHEAD(void)
{
	make_head_orphaned(g_repo, NON_EXISTING_HEAD);

	cl_assert_equal_i(GIT_EORPHANEDHEAD, git_checkout_head(g_repo, NULL));
}