只有当提交相同时,Git合并“已经是最新的”

时间:2015-08-03 16:51:23

标签: git version-control merge

这就是场景:我有一个开发分支,我从中创建新的分支来添加新功能:

git checkout -b newfeature develop

在我完成newfeature的更改之后,我结帐回来开发并尝试合并新的更改(我使用--no-ff,因为我希望合并始终创建一个提交对象):

git checkout develop
git merge --no-ff newfeature

我得到以下结果:Already up-to-date.。我已经在stackoverflow上阅读了其他问题,我知道这是不可能的,因为newfeaturedevelop的父级,但为什么开发会自动更改newfeature而不合并?

此外,我尝试向newfeature添加提交并合并回develop,这次它有效;它在develop分支上创建了两个提交,一个用于合并,另一个与newfeature的提交相同。

我有点困惑,你能澄清我的怀疑吗?

1 个答案:

答案 0 :(得分:0)

您只能合并"提交",这是您的第二种情况。当您在newfeature分支上时,无法合并对文件所做的更改。

即。 您在newfeature分支机构,您对文件进行了更改但未提交。 然后你转到develop分支并尝试合并来自newfeature的更改,这将无效,因为newfeature上没有提交。