这个错误:
我开git rebase -i --root
了分支,无知地想我可以改写与主服务器不同的第一个提交(Windows的GitHub默认视图是与主服务器的比较,隐藏了它的全部内容)。
当我将900多个提交加载到Sublime时,我长出了硅谷胡须。退出时没有任何变化,我为电池充电,然后开始剃须,因为所有900多个个人提交都坚定地重新设置了基础-将其提交时间重置为现在。
为了击败Git并保留原始时间,我删除了此本地存储库并从远程重新克隆。
现在,它重新添加了我希望删除的对master的最新不需要的提交,因此按以下步骤进行。
穷尽所有选项:
我不希望git revert
-它会创建一个额外的提交,从而使Git占上风。
git reset --hard HEAD
在检查了之后reflog
,什么也没做,最后也是唯一HEAD
的克隆-Git获胜。
为了获得最新的SHA,我检查了github.com上的远程存储库-小胜利。
经过思考后git reset --hard <SHA>
,我将另一个分支更新为master和1 ... 2 ... poof!提交又回来了-Git赢了。
检查回给主人,时间去尝试git rebase -i <SHA>
,然后取出线......都无济于事,痛心地说。“ 如果您在此处删除一行,则该行将丢失 ”。啊...关于新功能,在2.8.3发行说明中拖了n00b。
解决方案:
git rebase -i <SHA>
然后d, drop = remove commit
。
为了进行验证,我签出了另一个分支,然后瞧-没有隐藏的提交要从主服务器提取/拉取。
https://twitter.com/holman/status/706006896273063936
祝你有美好的一天。
cherry-pick
和delete
单个提交,可能发生在不久前。