换句话说,快进 merge 是否能保证生成与要 merge 的源分支的 HEAD 相同的 GIT SHA?
我在终端中测试了此行为,它适用于我的测试场景:
$ git rev-parse some-branch
0fc9fba2fb1c8a13556da4a333351bc12909c497
$ git merge some-branch --ff-only
Updating 90c6244..0fc9fba
Fast-forward
b | 0
1 file changed, 0 insertions(+), 0 deletions(-)
create mode 100644 b
$ git rev-parse HEAD
0fc9fba2fb1c8a13556da4a333351bc12909c497
我可以在我的工具中利用这种条件,例如我使用源 GIT SHA 标记构建工件。如果快进保证 SHA 不会发生变化,我就不必进行一些可能成本高昂的重建检查。问题是我必须确定这是真的。
最佳答案
快进 merge 只是分支上的索引转发,没有任何提交修改,因此哈希值将是相同的。
关于git - git 快进 merge 是否会更改 merge 提交的 SHA?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67740738/