git - 无论进行什么合并,Github 上的分支都无法达到奇偶校验
问题描述
我在 Github 上有两个分支,一个主分支和一个暂存分支。
暂存当前是主要提交之前的一个提交。
我创建了一个 PR,将基本分支设置为 main,并看到它将向 main 添加一个提交。我点击合并。
现在,当我检查 main 时,我看到 main 是在 staging 之前的一次提交。似乎合并添加了两个提交,而不仅仅是一个。
无论我是使用合并还是变基和合并,都会发生这种情况。有没有办法让这两个分支在 Github 本身上实现平等?我知道我可以强制推送到主分支,或者使用 CLI,但是主分支受到严重的分支保护,所以我想避免禁用这些保护。
解决方案
在涉及 PR(拉取请求)的正常工作流程下,不可能避免这种情况。
请记住,PR不是 Git 功能。Git 不以任何方式支持它们。Git 想要的是每次推送都应该是远程服务器上的快进。Git 认为推送永远不应该在服务器上进行合并提交。
PR 完全颠覆了这一点。他们确实在服务器上进行了合并提交(Git 认为这应该是不可能的)。当您“点击合并”时,这正是您所说的!好吧,那个合并提交是一个新的提交,所以在PR 完成并且分支被合并之后,服务器上的分支必然会领先于本地。
变基不会改变这一点。事实上,它可能会添加多个提交,使您的本地更加落后。
推荐阅读
- html - HTML中名称属性的用途是什么?
- docker - RabbitMQ,Kubernetes:队列中的消息在容器重新启动之间没有得到持久化,即使在添加卷之后也是如此
- javascript - 从字符串运行 HTML 和 JavaScript
- reactjs - 更改状态以使按钮从反应 js 中的禁用位置启用
- cron - Puppeteer 从终端工作但从 crontab 失败
- python-3.x - 在 Pandas 中读取 csv 文件
- javascript - 如何跟踪 pwa 安装的数量
- javascript - 我无法通过 axios&postman 更新数据库中的第一个记录以外的其他记录
- java - 如何在 Tripadvisor 处理气泡评分小部件中的评分?
- html - 在表格中居中一个按钮