想象一下,我有以下回购历史
1000 - 1001 - 1002
在修订号1001中,我在子目录中添加了一些文件并将其提交到1002.但实际上我要做的是从其中一些子目录中删除所有文件,然后添加新文件然后将其提交到修订号1002.
因为人类犯了错误:)所以我也不例外。现在1002拥有所有新文件和旧文件,如果我必须从1002中删除文件将会非常困难,因为它将是所有文件的混合。有没有办法在svn中轻松完成这个?
由于
答案 0 :(得分:1)
从一个干净的工作目录开始,然后在添加新文件之前返回修订版:
svn up -r 1001 .
现在,您可以从子目录中删除所有文件。 rev 1002中添加的文件不受影响,因为它们不存在于工作副本的修订版中。
svn rm foo/* bar/*
使用svn up
将工作副本更新到最新版本。出现在rev 1002中添加的文件。使用svn commit
提交之前标记为要删除的文件:
svn up
svn commit