删除SVN中最近的提交

删除SVN中最近的提交,svn,tortoisesvn,Svn,Tortoisesvn,好的,所以我仍然习惯于SVN业务。我基本上是在新年前后在我的存储库里大便。我认为重组我的网站的代码库是一个好主意,为实现一些OOP更改做准备。唯一的问题是,我愚蠢的是,我直接在我的计算机上而不是通过我的IDE来做这件事。下一个任务是FUBAR。。。所以我一次又一次地承诺。。嗯,是的,基本上只是在我的存储库里放了一堆垃圾 所以,在把我的存储库打到了一个NetBeans完全无法比拟的纸浆状状态之后,我转向Ottoisesvn来深入挖掘并检查我最后一次理智的承诺。这大约是链中较早的5次提交 我正在下载

好的,所以我仍然习惯于SVN业务。我基本上是在新年前后在我的存储库里大便。我认为重组我的网站的代码库是一个好主意,为实现一些OOP更改做准备。唯一的问题是,我愚蠢的是,我直接在我的计算机上而不是通过我的IDE来做这件事。下一个任务是FUBAR。。。所以我一次又一次地承诺。。嗯,是的,基本上只是在我的存储库里放了一堆垃圾

所以,在把我的存储库打到了一个NetBeans完全无法比拟的纸浆状状态之后,我转向Ottoisesvn来深入挖掘并检查我最后一次理智的承诺。这大约是链中较早的5次提交

我正在下载。我想知道我怎么能在这一次之后做出所有的承诺,假装这一系列的愚蠢行为从未发生过


谢谢你能提供的帮助。如果有关系的话,我会在SlikSVN主持。(我怀疑它没有…

如果您真的想从服务器上删除给定修订版之前的历史记录,我将创建一个新的存储库,并将其保存到确定的修订版。然后将uuid文件复制到新存储库中(以获得匹配的uuid),然后将您的工作副本重新定位到新存储库中-在更新到新存储库中存在的旧版本后(是的,在Turtoise GUI中是这样调用的!)


一个乏味的替代方法是进行完全转储,删除最后不需要的修订,然后再次加载。但请注意,转储必须保持一致。删除中间的修订可能会引起麻烦。

请查看此龟甲帮助主题:


目前没有办法从修订历史记录中永久删除修订,尽管。

在Turtoise SVN中,您选择一组不喜欢的提交,并说“从该修订中还原更改”-它将对工作副本执行反向更改,然后您提交这些反向更改。我敢肯定,一旦你找到了要使用的确切按钮/命令,你所使用的工具也能做到同样的效果。我认为询问者的意思是真正使修订从历史中消失。@sharptooth-现在运行它,我们将看到它是如何进行的。唉,所以根据受欢迎程度重新排序标签。最初我将
转储到svn
。。。叹息1:用户希望从存储库中删除他试图使用的修订。乌龟不能这么做!使用jdehaan在其回答中概述的技术,这可以非常容易地完成(因为他拥有存储repo的服务器的管理员权限)。@jgifford25:他正在结帐。从问题:“转向乌龟去挖掘并检查我最后的理智承诺”。另外,我知道“svnadmin转储/加载”和svnsync解决方案可以删除有问题的修订。但是,考虑到导致这个问题的一连串事件,我很确定OP对这两种解决方案都不满意,也不会将这两种解决方案描述为“容易”。此外,如果人们认为现有解决方案“容易”,那么功能请求就不会存在。最后,销毁存储库历史记录应该是最后的手段,仅用于删除意外提交的机密信息或非常大的文件。对于所有的错误,这不是你应该习惯性地去做的事情。