我已检出SVN存储库的工作副本。感兴趣的目录包含存储库中10个感兴趣的子目录,但它们不再适用于我。我现在不再需要将它们放在我的工作副本中,也不需要监视它们,但我需要在主目录中添加两个新的子目录。像这样:
我有什么:
DOI/
DontCare1/
DontCare2/
DontCare3/
我希望看到的是:
DOI/
NewSub1/
NewSub2/
所以我做的是从SVN之外的工作副本中删除DontCare目录 - 使用rm而不是svn delete
。然后我使用svn add
添加我的新目录及其内容。做svn commit NewSub*
并且看起来都很好。显然我可以在主DOI目录中缺少目录时提交,幸运的是,由于我没有使用svn delete
,它们不会被删除。
但是,如果我现在svn status
,我会将所有原始的DontCare目录及其内容列为缺失(!在第一列中)。
当我从主DOI目录执行svn status
时,有什么办法可以忽略这些DontCare目录吗?或者我只是坚持这个场景,因为这是存储库中存在的内容。我可以很容易地做svn status NewSub*
并避免看到所有其他目录/文件,但是不必跟踪所有其他目录/文件可能会很好。
如果我继续使用主DOI中丢失的DontCare目录,那么是否存在无意中将这些删除发送到存储库的危险?就像我说的那样,没有使用svn delete
命令 - 只需rm
本地工作副本。
BTW,我在Fedora 19上使用svn客户端v1.7.18。服务器版本是1.3.2。 (不,我不管理服务器版本,或者它很久以前就已经更新了!)
答案 0 :(得分:1)
你可以阅读和使用(更好 - 从头开始重新创建你的WC)sparse directories
即你
结果,您将获得干净的工作副本,只需要数据(不再是脏svn st
),并且没有可能犯错并从存储库中删除DontCare * dirs(删除不是灾难,因为可以撤消,但 Bad Thing(tm)无论如何)
PS:Subversion 1.3。*,2006年5月发布,在服务器端是(今天)可怕的噩梦!你今天几乎没有任何东西,甚至是自动合并跟踪