如何从SVN仓库中批量删除文件/目录

e4rthdog

使用:VisualSVN服务器,TortoiseSVN,AnkhSVN

我使用TortoiseSVN为所有.NEt项目和支持的源/资源进行了初始存储库加载。

我打算将tortoiseSVN用于所有常规的源代码控制操作,并将AnkhSVN用于Visual Studio解决方案。

我的问题是我的存储库现在具有我不需要的特定于开发人员/计算机的文件/目录。

我知道,如果您从Visual Studio中将解决方案添加到存储库中,则使用Microsoft的SCC API来获取Ankhsvn不会包括它们。

因此,我现在需要去从svn存储库中批量删除必要的文件/目录。

这些包括(但我可能会添加更多):

thumbs.db Thumbs.db *.bak *.class *.exe *.dll *.mine *.obj *.ncb *.lib *.log *.idb *.pdb *.ilk *.msi* .res *.pch *.suo *.exp *.*~ *.~* ~*.* cvs CVS .CVS .cvs release Release debug Debug ignore Ignore bin Bin obj Obj Generated Logs *.csproj.user *.user

我如何才能做到而不必一​​一列举?

附加信息:

一个想法是Micha提出了HERE,但必须在转移到存储库之前进行。

大卫·W

我总是建议开发人员在使用VisualStudio项目时使用AnkhSVN,而不要使用TortoiseSVN。AnkhSVN不允许您将私人用户文件检入VIsualStudio项目。

要摆脱这些文件,您必须检出存储库才能删除单个文件。现在有解决此问题的方法。抱歉...

首先,您需要一个不应包含在Subversion存储库中的VisualStudio文件列表

然后,您应该获得Subversion客户端的Windows命令行版本。您可以从SlikSVN获得此信息基于命令行的Subverison客户端将允许您以编程方式删除不需要的文件,而无需一次处理一个。

例如,如果使用在Windows系统上提供类似GNU / Linux的环境的Cygwin,则可以执行以下操作:

$ svn checkout $repo-project $workdir
$ find $workdir \( -name "*.suo" -o -name "*.csproj.user" \) -exec svn delete {} \;
$ svn commit -m"Removing all VisualStudio private files from repo" $workdir

或者,您可以编写一个简短的Perl,Python甚至PowerShell程序来为您执行此操作。

如果您不了解PowerShell,那么在PowerShell中可能是第一个不错的项目。自XP以来的所有Windows版本均随附PowerShelL。PowerShell是一种非常强大的脚本语言-比Windows Batch强大得多,甚至比Bash Shell脚本还要强大。哎呀,这在脚本编写能力上相当于Python或Perl。我只是不明白为什么在基于Windows的开发站点中很少使用它。但是,如果您确实学习了它,就会发现它是用于各种Windowy东西的强大工具。PowerShell与Windows注册表,IIS和各种系统服务集成。

一旦删除了所有这些用户文件,便可以使用此Subversion预先提交将它们永远保留在Subversion存储库中。控制文件条目将如下所示:

[FILE You cannot add private user files into a VisualStudio project]
match = VSproject/.*/\.(suo|user|webinfo|dll|exe)$
access = no-add
users = @ALL

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何从SVN仓库中批量删除文件/目录

来自分类Dev

从SVN远程仓库中删除目录/文件,而不会导致本地非版本副本被删除

来自分类Dev

从SVN远程仓库中删除目录/文件,而不会导致本地非版本副本被删除

来自分类Dev

如何从GIT仓库中删除目录级别?

来自分类Dev

(批量)如何递归删除目录中除以.开头的文件/文件夹之外的所有文件/文件夹?

来自分类Dev

如何批量删除部分目录?

来自分类Dev

从git仓库中删除文件

来自分类Dev

从git仓库中删除文件

来自分类Dev

如何批量删除文件列表?

来自分类Dev

如何删除目录中X个文件

来自分类Dev

如何删除根目录中的文件?

来自分类Dev

如何从目录中删除所有文件?

来自分类Dev

如何从/ usr目录中删除单个文件?

来自分类Dev

如何删除子目录中的文件

来自分类Dev

如何删除目录中相同大小的文件?

来自分类Dev

如何删除目录中X个文件

来自分类Dev

批量重命名特定目录中的文件

来自分类Dev

如何从SVN永久删除文件?

来自分类Dev

如何从SVN永久删除文件?

来自分类Dev

如何查看SVN日志中已删除文件的列表?

来自分类Dev

Git:如何删除现在在gitignore中但之前已添加到仓库中的文件

来自分类Dev

如何列出在软件仓库中删除但在本地编辑中打开的文件?

来自分类Dev

我们如何删除某些目录文件中的文件?

来自分类Dev

如何基于压缩的tar文件的内容从目录中删除文件?

来自分类Dev

如何删除除目录中的文件以外的所有文件?

来自分类Dev

从目录中删除SVN并替换为较新的SVN

来自分类Dev

如何删除目录中超过2周的目录中的所有目录(最新目录中与文件模式匹配的目录除外)?

来自分类Dev

批量删除文件名中的括号

来自分类Dev

批量删除javascript文件中的注释

Related 相关文章

  1. 1

    如何从SVN仓库中批量删除文件/目录

  2. 2

    从SVN远程仓库中删除目录/文件,而不会导致本地非版本副本被删除

  3. 3

    从SVN远程仓库中删除目录/文件,而不会导致本地非版本副本被删除

  4. 4

    如何从GIT仓库中删除目录级别?

  5. 5

    (批量)如何递归删除目录中除以.开头的文件/文件夹之外的所有文件/文件夹?

  6. 6

    如何批量删除部分目录?

  7. 7

    从git仓库中删除文件

  8. 8

    从git仓库中删除文件

  9. 9

    如何批量删除文件列表?

  10. 10

    如何删除目录中X个文件

  11. 11

    如何删除根目录中的文件?

  12. 12

    如何从目录中删除所有文件?

  13. 13

    如何从/ usr目录中删除单个文件?

  14. 14

    如何删除子目录中的文件

  15. 15

    如何删除目录中相同大小的文件?

  16. 16

    如何删除目录中X个文件

  17. 17

    批量重命名特定目录中的文件

  18. 18

    如何从SVN永久删除文件?

  19. 19

    如何从SVN永久删除文件?

  20. 20

    如何查看SVN日志中已删除文件的列表?

  21. 21

    Git:如何删除现在在gitignore中但之前已添加到仓库中的文件

  22. 22

    如何列出在软件仓库中删除但在本地编辑中打开的文件?

  23. 23

    我们如何删除某些目录文件中的文件?

  24. 24

    如何基于压缩的tar文件的内容从目录中删除文件?

  25. 25

    如何删除除目录中的文件以外的所有文件?

  26. 26

    从目录中删除SVN并替换为较新的SVN

  27. 27

    如何删除目录中超过2周的目录中的所有目录(最新目录中与文件模式匹配的目录除外)?

  28. 28

    批量删除文件名中的括号

  29. 29

    批量删除javascript文件中的注释

热门标签

归档