【发布时间】:2020-06-21 03:45:48
【问题描述】:
因此,我的一位同事尝试在 Web 界面中使用 GitHub 的“通过快进合并”选项合并分支,以保持历史记录免受虚假合并提交的影响(他们合并到的 master 分支,有自从要合并的功能分支开始后没有进展)。
有趣的是,这并没有按预期工作:所有提交都有新的提交哈希。
仔细观察,merge-option 似乎实际上被称为“Rebase and Merge”,它似乎确实相当于 git rebase --force,改变了 Committer 信息(两者都是是否进行了合并,以及合并发生的时间)。
我花了很长时间才确认我的怀疑确实是这种情况,因为我无法让 cmdline 工具向我展示功能分支上的原始提交和看似相同的提交之间的区别(使用不同的哈希)在主分支上。
(最后我发现gitk同时显示了提交的Committer和Author;在非常结尾我发现我也可以通过git log --pretty=raw获取这些信息)
所以:
- 有没有办法通过 GitHub 的网络界面进行“适当的”快进合并(
git rebase没有选项)?李>--force - 如果不是:为什么? (我可以看到问责制的优点;例如,它回答了谁对给定的代码最终出现在
master负责的问题)
【问题讨论】:
标签: github git-merge fast-forward