gpt4 book ai didi

Git 快进 VS 无快进 merge

转载 作者:IT王子 更新时间:2023-10-29 01:15:08 26 4
gpt4 key购买 nike

Git merge 允许我们执行快进和非快进分支 merge 。什么时候使用快进 merge 以及什么时候不使用快进 merge 有什么想法吗?

最佳答案

--no-ff 选项在您想要清楚地了解您的功能分支时很有用。因此,即使在此期间没有提交,FF 也是可能的——有时您仍然希望主线中的每个提交都对应一个功能。因此,您将具有一堆提交的功能分支视为一个单元,并将它们 merge 为一个单元。当您使用 --no-ff 进行功能分支 merge 时,从您的历史记录中可以清楚地看到。

如果您不关心这样的事情 - 只要有可能,您就可以逃脱 FF。因此你会有更多类似 svn 的工作流感觉。

例如,这个 article 的作者认为 --no-ff 选项应该是默认选项,他的推理与我上面概述的接近:

考虑“feature”分支上的一系列次要提交共同构成一个新功能的情况:如果你只是执行“git merge feature_branch”而没有 --no-ff,“它从 Git 历史记录中不可能看到哪些提交对象一起实现了一个功能——你必须手动读取所有日志消息。恢复整个功能(即一组提交)是一个真正令人头疼的问题 [if --no-ff 未使用],而如果使用 --no-ff 标志则很容易完成 [因为它只是一次提交]。”

Graphic showing how --no-ff groups together all commits from feature branch into one commit on master branch

关于Git 快进 VS 无快进 merge ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6701292/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com