TortoiseSVN仍然可以看到使用svndumpfilter删除的文件

TortoiseSVN仍然可以看到使用svndumpfilter删除的文件,svn,tortoisesvn,svndumpfilter,Svn,Tortoisesvn,Svndumpfilter,我正试图从我们的SVN存储库中删除大文件,因为我们的非开发人员用户都是很酷的家伙,为什么5GB文件不进行源代码管理 我已经读到,显然这对于SVN来说不是一项容易的任务,但它可以通过使用svndumpfilter进行黑客攻击,所以这就是我正在做的。为了测试我试图筛选的内容,我创建了一个空的测试存储库,其中包含以下内容: 我已使用以下命令转储该存储库: sudo svnadmin dump /path/to/repo > my.dmp svndumpfilter exclude --pat

我正试图从我们的SVN存储库中删除大文件,因为我们的非开发人员用户都是很酷的家伙,为什么5GB文件不进行源代码管理

我已经读到,显然这对于SVN来说不是一项容易的任务,但它可以通过使用
svndumpfilter
进行黑客攻击,所以这就是我正在做的。为了测试我试图筛选的内容,我创建了一个空的测试存储库,其中包含以下内容:

我已使用以下命令转储该存储库:

sudo svnadmin dump /path/to/repo > my.dmp
svndumpfilter exclude --pattern '*.sql' < my.dmp > my.dmp.filtered
我可以使用此选项毫无问题地重新加载它:

sudo svnadmin load /path/to/repo < my.dmp
其输出如下所示:

bitnami@linux:~/working$ svndumpfilter exclude --pattern '*.sql' < my.dmp > my.dmp.filtered
Excluding prefix patterns:
   '/*.sql'

Revision 0 committed as 0.
Revision 1 committed as 1.
Revision 2 committed as 2.
Revision 3 committed as 3.
Revision 4 committed as 4.
Revision 5 committed as 5.

Dropped 2 nodes:
   '/NewFolder/09_Script_Migrate_Data_From_dbo.SalesNormalTable_To_dbo.SalesPartitionTable.sql'
   '/Test/AllSql.sql'
一切都很好,我的文件不见了。我将过滤后的回购转储加载到存储库中:

sudo svnadmin load /path/to/repo < my.dmp.filtered
我查看了目录以确保文件在那里:

bitnami@linux:~/working$ ls -lash RedMineProduction/*
RedMineProduction/NewFolder:
total 8.0K
4.0K drwxrwxr-x 2 bitnami bitnami 4.0K Mar 11 15:35 .
4.0K drwxrwxr-x 5 bitnami bitnami 4.0K Mar 11 15:35 ..

RedMineProduction/Test:
total 148K
4.0K drwxrwxr-x 2 bitnami bitnami 4.0K Mar 11 15:35 .
4.0K drwxrwxr-x 5 bitnami bitnami 4.0K Mar 11 15:35 ..
140K -rw-rw-r-- 1 bitnami bitnami 138K Mar 11 15:35 .NET String Formats.pdf
我怎样才能让Tortoise刷新到存储库的实际状态?这是一份5版的报告。。。我们的20k+版本存储库将会非常糟糕

更多信息:

当我在浏览器中查看存储库时,筛选出的文件仍然可见。它们已损坏,我无法下载,但它们的文件名和相关目录结构仍然存在


我查看了
my.dmp.filtered
文件,看看是否有旧结构的痕迹,而没有。结构和文件所在的提交编号将显示“这是用于填充的空修订版”消息。

筛选操作似乎工作正常。看起来svn服务器中有东西正在缓存文件名。正如我所看到的,您正在通过http访问存储库。尝试重新启动(apache?)服务器。解决这个问题的另一个办法是更改存储库UUID。您可以通过在linux服务器上运行“svnadmin setuuid repo_path”命令来更改它。您不需要提供新的UUID,svnadmin将为您创建一个。我还想请您试用我们开发的专门用于从svn删除文件的工具
bitnami@linux:~/working$ sudo svnadmin load /opt/bitnami/repository/RedMineProduction/ < my.dmp.filtered
<<< Started new transaction, based on original revision 1
     * adding path : Test ... done.

------- Committed revision 1 >>>

<<< Started new transaction, based on original revision 2
     * adding path : NewFolder ... done.

------- Committed revision 2 >>>

<<< Started new transaction, based on original revision 3
     * adding path : Test/.NET String Formats.pdf ... done.

------- Committed revision 3 >>>

<<< Started new transaction, based on original revision 4

------- Committed revision 4 >>>

<<< Started new transaction, based on original revision 5

------- Committed revision 5 >>>
bitnami@linux:~/working$ svn co file:///opt/bitnami/repository/RedMineProduction/
    A    RedMineProduction/NewFolder
    A    RedMineProduction/Test
    A    RedMineProduction/Test/.NET String Formats.pdf
Checked out revision 5.
bitnami@linux:~/working$ ls -lash RedMineProduction/*
RedMineProduction/NewFolder:
total 8.0K
4.0K drwxrwxr-x 2 bitnami bitnami 4.0K Mar 11 15:35 .
4.0K drwxrwxr-x 5 bitnami bitnami 4.0K Mar 11 15:35 ..

RedMineProduction/Test:
total 148K
4.0K drwxrwxr-x 2 bitnami bitnami 4.0K Mar 11 15:35 .
4.0K drwxrwxr-x 5 bitnami bitnami 4.0K Mar 11 15:35 ..
140K -rw-rw-r-- 1 bitnami bitnami 138K Mar 11 15:35 .NET String Formats.pdf