不提交更新分支
update branch without commits
前段时间我从开发分支创建了一个分支,实际上我什么也没做,只是一个提交编辑评论。
现在我想开始使用这个分支,但我想用来自开发的提交更新它。
实际上我可以删除它并重新创建分支,但我很感兴趣如果我合并或变基与开发会发生什么。
因为这个分支几乎没有提交,我想merge和rebase之间没有区别。我说得对吗?
如果我先在另一个方向上做会发生什么:先将开发分支与这个分支合并?
rebase 和 merge 之间存在差异,后者将(仅)体现在您的提交历史记录图中。
变基:
如果你做一个变基,你的提交历史看起来就像你今天使用你的主分支创建你的开发分支和你的一个开发提交。 (时间戳当然会讲述一个不同的故事)。您的提交历史将是线性的。
所有 rebase 冲突解决方案都将放在此开发提交中。
合并:
如果你进行合并,git 将创建一个合并提交,将你的主分支和你的开发分支结合起来。此合并提交将有两个父项 - 主分支的头部(或尖端)和开发分支的头部(或尖端)。您的提交历史将不是线性的。
所有合并冲突解决方案都将放置在此合并提交中。
合并方向
与大多数其他 VCS 不同,git 中的合并没有方向。将开发分支合并到主分支还是将开发分支合并到主分支都没有关系。结果应该是一样的。
总结:
选择 rebase 而不是 merge 或其他方式是每个基础的选择,但它是一个有影响的选择。 This 是帮助您做出决定的好资源。
前段时间我从开发分支创建了一个分支,实际上我什么也没做,只是一个提交编辑评论。
现在我想开始使用这个分支,但我想用来自开发的提交更新它。
实际上我可以删除它并重新创建分支,但我很感兴趣如果我合并或变基与开发会发生什么。
因为这个分支几乎没有提交,我想merge和rebase之间没有区别。我说得对吗?
如果我先在另一个方向上做会发生什么:先将开发分支与这个分支合并?
rebase 和 merge 之间存在差异,后者将(仅)体现在您的提交历史记录图中。
变基:
如果你做一个变基,你的提交历史看起来就像你今天使用你的主分支创建你的开发分支和你的一个开发提交。 (时间戳当然会讲述一个不同的故事)。您的提交历史将是线性的。
所有 rebase 冲突解决方案都将放在此开发提交中。
合并:
如果你进行合并,git 将创建一个合并提交,将你的主分支和你的开发分支结合起来。此合并提交将有两个父项 - 主分支的头部(或尖端)和开发分支的头部(或尖端)。您的提交历史将不是线性的。
所有合并冲突解决方案都将放置在此合并提交中。
合并方向
与大多数其他 VCS 不同,git 中的合并没有方向。将开发分支合并到主分支还是将开发分支合并到主分支都没有关系。结果应该是一样的。
总结:
选择 rebase 而不是 merge 或其他方式是每个基础的选择,但它是一个有影响的选择。 This 是帮助您做出决定的好资源。