我克隆了一个 github 仓库,并在本地进行了多次提交。当我本来想为自己的更改创建一个单独的分支时,我不小心把这些提交都放在了主分支上。有没有办法将这些更改转换为新的分支并在推送更改到远程之前恢复原来的主分支?
# 从当前HEAD创建一个新分支:
git branch <newbranchname>
# 将当前分支(仍为master)重置为远程主分支:
git reset --hard origin/master
# 切换到新分支:
git checkout <newbranchname>
$ git branch new-branch-name
$ git reset --hard origin/master ## or whatever point you want to reset master to
$ git reset --hard origin/master && git checkout -b newbranchname HEAD@{1}
命令。我喜欢引用日志。 - amalloy