问题描述
我使用强制推送来修改我的分支 B
上的提交消息。我在这个分支上独自工作,然后我向 master A
申请了 PR。
接受PR后会不会有问题?
根据 this 的回答,从我的分支拉出的人会收到错误消息。但是没有人从我的分支拉。但是在 PR 合并之后,我的分支以及修改后的提交将在 master 中。那么已经/将要从 master
拉取的开发者会得到任何错误吗?
this 的回答并未说明 PR 合并后其他开发者从 master
获取数据是否会出现任何错误
解决方法
编辑提交和强制推送的问题在于,就 git 而言,未编辑和编辑的提交是不相关的。因此,如果有人同时拉取提交的原始版本和编辑版本,git 将尝试合并它们并弄得一团糟。
另一方面,如果他们只提取编辑过的版本,一切都很好。
因此,强制推送用于协作或最终用户下载的分支通常是个坏主意。
另一方面,强制推送拉取请求分支通常是可以的,并且通常用于根据反馈进行清理。只有最终版本的拉取请求才有可能合并到真正重要的分支中。