从SVN信息库中删除文件,而不删除本地副本


201

如何删除已存在于SVN存储库中的文件而不从我的文件系统中删除它?

欢迎使用TortoiseSVN或命令行指令。

下面的作品,但我希望的东西更好:

  1. 将文件复制到存储库之外的其他位置。
  2. SVN删除文件。
  3. 提交
  4. 将文件复制回来,并确保在将来的提交时忽略它们。
245
svn delete --keep-local the_file 
+4

我得到“svn:invalid选项:--keep-local” - 是因为我在1.4.6上吗? 11 5月. 092009-05-11 17:39:30

+7

@barfoon:是的,--keep-local只能在svn 1.5.0+中使用。恐怕您必须事先手动复制文件,或者之后使用svn cat将其检出。 12 5月. 092009-05-12 08:51:08

+4

并且记住在此操作之后执行提交。 23 2月. 122012-02-23 13:08:19

+1

有谁知道这个过程是否会在更新时从其他用户中删除该文件? 24 7月. 142014-07-24 22:54:28

+3

当用户更新时,他们从存储库中获取最新版本。由于该问题询问如何从存储库中删除文件,因此其他用户在更新时会删除该文件。 25 7月. 142014-07-25 04:44:32

+3

那正是我试图避免的。一旦意外检查了一些东西,很难从SVN中删除东西... 25 7月. 142014-07-25 17:21:12


51

在TortoiseSVN的,你也可以 +右键单击获得包括“删除(保留本地)”的菜单。


96

Deleting files and folders

如果要删除存储库中的项目,但是在本地作为非版本控制的文件/文件夹,使用扩展菜单→删除(保留本地)。在右键单击资源管理器列表窗格(右窗格)中的项目时,必须按住Shift键才能在扩展上下文菜单中看到此项。

删除完全:
点击鼠标右键→菜单→删除

删除&保留局部:
Shift +鼠标右键点击→菜单→删除


0

重命名文件,提交包括“已删除”文件的更改,并且不包含新的(重命名的)文件。

重新命名您的文件。


-2

当要删除从SVN一个xxx.java文件:

  1. 进入工作区文件所在的路径所在。
  2. 从文件夹(xxx.java)中删除该文件
  3. 右键单击并提交,然后打开一个窗口。
  4. 从文件夹中选择您删除的文件(xxx.java),然后再次右键单击并删除..它将从SVN中删除该文件。
+2

这将删除文件 - 但是不是问题是关于在从SVN中删除原始文件后保留原文件吗? 07 3月. 122012-03-07 00:45:48