【发布时间】:2018-09-25 01:16:17
【问题描述】:
我犯了一个错误,并在应该推送开发时将更改推送到 master。哎呀!
因此,我将更改推送到开发并从 master 中删除了更改。
不幸的是,这导致 GitHub 认为 master 是在 develop 之前提交的,而 develop 是在 master 之前的。
如何让 GitHub 理解 develop 是具有更新内容的分支,这样新的更改不会在未来的拉取请求中被覆盖?
编辑:
我通过拉取它删除了 master 中的更改,使用删除最后一次提交
git revert -m 1 <SHA of commit>
,并将其推送到 master
编辑 2:
我好像不清楚。开发分支有我想要在未来掌握的更改。
但是,master 分支有我应用到 develop 的提交加上一个额外的提交,这抵消了 develop 的更改。
我希望将来将 develop 中的更改应用于 master。但是,master 认为它是领先的,因为我取消了在开发中实现的更改。
因此,develop 分支被认为是落后一个提交,提前 0 个提交,因为 master 拥有来自 develop 的更改加上一个反转来自 develop 的更改的提交。
据我了解, git rebase 将“快进”发展为掌握。但是,这是不需要的,因为由于上述解释,这将删除 master 将来需要进行的更改。
【问题讨论】:
-
您是如何从 master 中删除更改的?
-
@PankajSinghal 我更新了如何删除问题中的更改。
标签: git github versioning git-branch