UNBORN implies FAST_FORWARD

This commit is contained in:
Edward Thomson 2014-03-20 09:35:22 -07:00
parent ac584fcfd3
commit 58c2b1c421
3 changed files with 5 additions and 4 deletions

View File

@ -248,8 +248,8 @@ typedef enum {
GIT_MERGE_ANALYSIS_NORMAL = (1 << 0),
/**
* The repository is already up-to-date and no merge needs to be
* performed. The given merge input already exists as a parent of HEAD.
* All given merge inputs are reachable from HEAD, meaning the
* repository is up-to-date and no merge needs to be performed.
*/
GIT_MERGE_ANALYSIS_UP_TO_DATE = (1 << 1),

View File

@ -2531,7 +2531,7 @@ int git_merge_analysis(
*out = GIT_MERGE_ANALYSIS_NONE;
if (git_repository_head_unborn(repo)) {
*out = GIT_MERGE_ANALYSIS_UNBORN;
*out = GIT_MERGE_ANALYSIS_FASTFORWARD | GIT_MERGE_ANALYSIS_UNBORN;
goto done;
}

View File

@ -99,7 +99,8 @@ void test_merge_workdir_analysis__unborn(void)
p_unlink(git_buf_cstr(&master));
analysis = analysis_from_branch(NOFASTFORWARD_BRANCH);
cl_assert_equal_i(GIT_MERGE_ANALYSIS_UNBORN, analysis);
cl_assert_equal_i(GIT_MERGE_ANALYSIS_FASTFORWARD, (analysis & GIT_MERGE_ANALYSIS_FASTFORWARD));
cl_assert_equal_i(GIT_MERGE_ANALYSIS_UNBORN, (analysis & GIT_MERGE_ANALYSIS_UNBORN));
git_buf_free(&master);
}