让我先声明一下我的问题:git 是我 25 年来使用过的最令人困惑的东西。由于某种原因,我有一个心理障碍,确实阻止了我理解它。
我在本地和 Github 上都有一个“主”分支。
我创建了一个名为“admin_tweaks”的本地分支。
我查看了“admin_tweaks”。
我做了一些改变。
我将分支推送到原点。
我在 github 上创建了一个 Pull 请求。
Github表示没有冲突,可以自动 merge 到master。所以我按下了按钮。
Github 给了我这条消息:
Pull request successfully merged and closed
You’re all set—the admin_tweaks branch can be safely deleted.
在本地,我检查了 master 分支。我做了一个git pull
。
我看到我的改变下降了。
我尝试使用以下命令在本地删除“admin_tweaks”分支:
git branch -d admin_tweaks
并收到了这条非常令人困惑和令人担忧的消息:
warning: not deleting branch 'admin_tweaks' that is not yet merged to
'refs/remotes/origin/admin_tweaks', even though it is merged to HEAD.
error: The branch 'admin_tweaks' is not fully merged.
If you are sure you want to delete it, run 'git branch -D admin_tweaks'.
我在这里缺少健康工作流程的哪一部分?我对我的更改是否正确 merge 的信心绝对为零。
最佳答案
此消息通常意味着您的本地 admin_tweaks
未完全 merge 到 origin/admin_tweaks
中,或者似乎没有。当我将分支 merge 到 master 时,有时会收到此消息。这并不是问题的迹象:该消息确认您的分支已 merge 到 HEAD 中,这意味着您的 pull 请求按预期工作。
正在做
git log --decorate --graph
应该告诉你为什么 Git 认为 admin_tweaks
没有 merge 到 origin/admin_tweaks
中。例如,这可能是由于在 GitHub 上接受 pull 请求时删除了 origin/admin_tweaks
。
关于git - merge 简单1个提交分支的极其简单的git/Github用例导致分支删除失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54132679/