Wc state reports are incorrect right now, because in a wc from which the deletion of entry D/foo has been committed, D/.svn/entries simply loses its entry for foo. Later, when doing an update state report, the fact that foo is not present in the wc is never reported to the server, because the wc is not aware that it's missing anything! The server, thinking that the client has foo, may depend on that assumption during an update. For example: $ svn st . 9 ./foo 9 $ svn rm foo $ svn ci "Removed foo." Committing... D foo Committed revision 10. $ svn up -r9 [nothing happens!] $ See this message to the dev list http://subversion.tigris.org/servlets/ReadMsg?msgId=64800&listName=dev and all the followup on that thread, esp the mail near the end from Sander Striker proposing use of a "dirty bit" on the dir to tell the server that any entries present in this dir will be reported explicitly (so those not mentioned should be assumed gone).