我为我的更改创建了一个分支,并在那里做了很多提交。但后来我想回滚我最近的提交。所以我做了以下 1. 我在我的分支上使用 git checkout 签出之前的提交。2. 然后我对本地目录进行了更改并提交了更改。
现在我无法将它推到分支头。它显示为分离的头部,在 GIT UI 中看不到这个提交。
请注意,我想将更改推送到我的分支头部而不是主分支。有什么帮助吗?
我为我的更改创建了一个分支,并在那里做了很多提交。但后来我想回滚我最近的提交。所以我做了以下 1. 我在我的分支上使用 git checkout 签出之前的提交。2. 然后我对本地目录进行了更改并提交了更改。
现在我无法将它推到分支头。它显示为分离的头部,在 GIT UI 中看不到这个提交。
请注意,我想将更改推送到我的分支头部而不是主分支。有什么帮助吗?
如果我理解正确,您检查了您之前的提交而没有将您的分支重置为它,因此分离了HEAD
. 要将分支恢复到当前分支HEAD
(并删除它指向的提交),只需使用:
git checkout -B your_branch # Reset your_branch to HEAD and attach to it
如果您已经推送了已删除的提交,则需要进行--force
下一次推送。
# create a branch where you're currently pointing at
git branch temp
git checkout your_branch
git merge temp
并且您从分支中所做的提交将被引入,它应该是快进的(因此没有不必要的合并提交)。