在将git分支合并到develop/master之前是否有必要更新它?
考虑一个场景,其中我从master创建了一个名为“feature1”的分支。我的朋友还从master创建了一个名为“Feature2”的分支。他完成了代码更改,并将“Feature2”分支合并回master在将git分支合并到develop/master之前是否有必要更新它?,git,git-merge,Git,Git Merge,考虑一个场景,其中我从master创建了一个名为“feature1”的分支。我的朋友还从master创建了一个名为“Feature2”的分支。他完成了代码更改,并将“Feature2”分支合并回master 现在,我已经完成了“功能1”分支中的更改,并希望合并回master(自从我分支它以来,它一直在更新)。在将“功能1”合并到主功能之前,我是否需要拉入/重设基础,或者这是git将处理的问题?在将功能分支合并到主分支之前,无需更新主分支。然而,这不是最佳做法。您最好执行以下操作: 拉动主分支,确
现在,我已经完成了“功能1”分支中的更改,并希望合并回master(自从我分支它以来,它一直在更新)。在将“功能1”合并到主功能之前,我是否需要拉入/重设基础,或者这是git将处理的问题?在将功能分支合并到主分支之前,无需更新主分支。然而,这不是最佳做法。您最好执行以下操作:
主版本
,该版本已过时master
,应用master
顶部的任何本地更改(如果使用分支进行编辑,则无)feature1
分支,该分支仍然基于过时的“master”feature1
更改应用于master
,后者在#2中更新master
,它已更新,但仍然没有您的功能1
更改master
更改应用于feature1
之上,但由于feature1是master的直接子项,因此这只是使用您的feature1更改再次更新master如果没有冲突,则应该合并。我更喜欢在合并之前进行重新基化,因为这会让历史看起来更好。如果您使用GitHub,它会显示一条消息,指示它是否可以合并而不发生冲突。我见过一个案例,在合并“Feature 1”分支后,没有重新基化/拉入,导致主分支中有一个不应该存在的文件。将“功能1”合并到主功能时没有冲突。步骤7不应该是git merge feature1?合并应该是在步骤1-6之后的快速推进。是的,步骤7应该是git merge feature1,然后是git push origin master。您能否详细说明“使用您的回购的其他人会很高兴。”我对这一点的想法随着时间的推移而发展,特别是当您处理具有许多贡献者的高度活跃的回购时。其中一些是个人和组织偏好,而不是必须遵循的规则。通常,在查看git历史记录时,如果历史记录是线性的,则更容易理解。因此,如果您正在处理规模较小的回购协议,通常最好进行重新基准以避免合并提交。高度活跃的回购,当
main
分支快速移动时,添加合并提交可能是获得更改的唯一方法。