我们添加了一个新用户,他做了一个put pull并错误地认为它是成功的。
然后他们进行了git推送,但由于他们没有文件,他们删除了整个项目中的所有文件。
现在,我们需要撤消所发生的事情,并在删除所有内容之前将项目回滚到提交。
答案 0 :(得分:6)
git revert HEAD
git revert
创建一个新的提交,它可以恢复指定提交引入的所有更改。
有关更多信息和背景信息,请参阅this blog post。
答案 1 :(得分:1)
您应首先检查主存储库发生了什么。整个分支是删除的(需要强制推送)还是新用户只是引入了一个删除所有文件的新提交。
如果删除了分支,请将其从其他开发人员存储库中推回。
如果新用户只是通过一次提交删除了所有内容,请转到主存储库并执行
git reset --hard HEAD^
摆脱违规提交。我会建议反对git revert
,除非很多人已将错误归入他们的存储库。如果您还原,您将在历史记录中记录此错误。如果您重置,则没有任何迹象表明这种情况发生过。但只有在错误的提交还没有扩散的情况下重置!