我和另外一位开发者一直在将我们的工作合并并推送到一个名为toolwork的非主分支上。这样,我们就不会影响到团队其他人的工作。我的主题分支名为DPM-93,我的Git工作流程如下:
# do some work
git checkout DPM-93
git commit -m "did some work"
# catch up
git checkout toolwork
git pull origin toolwork
# rebase my topic branch
git checkout DPM-93
git rebase toolwork
# merge and push my changes
git checkout toolwork
git merge --no-ff DPM-93
git push origin toolwork
事情一直都运行得很好,直到我不小心执行了这些 git 命令。
git checkout toolwork
git pull origin master
在那时,分支“toolwork”中出现了许多新内容,除了删除我的工作空间并从存储库重新克隆之外,我不确定如何摆脱它们。
有没有办法回退到拉取之前的状态?
git rebase -i ORIG_HEAD
删除不想要的提交是否可以? - unutbugit reset
。 - VonCgit reset --hard
不仅会改变工作树和索引,还会移除有向无环图中父节点指针。 - unutbu