如何删除错误检出的本地工作副本?我有一个包含不同签出树(和.svn目录)的目录,只想删除其中一个。删除文件不起作用 - 对父项的任何更新或尝试重新使用树名都会重新填充文件。 svn delete也不起作用,我不能从父提交,或者仍然重用树名。 [是的我可以忽略“已删除”的树,但我想重新使用该名称。]
在svn delete上有一个选项keep_local,它保留文件的本地副本,但是将它们从存储库中删除。我基本上想要做相反的事情 - 删除本地副本,好像它从未存在 - 但不要触及存储库。有没有办法做到这一点?
答案 0 :(得分:2)
您的解决方案在于sparse directories。
假设您有一个名为parent
的目录(即结帐的根目录),目录名为child01
,child02
和child03
- 和{{1}包含您在结帐时不需要的目录和文件。你告诉Subversion child02
应该被视为“稀疏”:
child02
从那时起,> cd parent\child02
> svn update --set-depth empty
文件夹上发出svn update
,Subversion将“忽略”parent
文件夹的所有更新。
当然,这是特定于结帐的。如果您child02
的另一个副本svn checkout
,那么parent
将包含其文件和文件夹,因为child02
(实际上所有命令)的默认深度为{{1 }}
希望这有帮助。