Maybe someone can explain this behavior. Sometimes I will do an SVN update, and for some reason SVN will forget that a file is under source control, and it will delete it from my directory; I have to Revert to add the files back.
Just now I made a change in a file and went to commit it. The change was Deleted instead, which I quickly realized after pressing the Commit button. Checking the folder, I found that none of the files under there were under version control anymore; SVN had somehow “forgotten” (without running an update at all before now) that they had been added to it at all, and had I committed the entire directory it would have deleted everything. Again, I had to revert the folder, re-add the file I changed, and re-commit my change with a note that the previous commit incorrectly deleted the file.
Any idea why this happens? I also frequently run into “Your tmp directory is corrupt. Run cleanup” errors nearly every time I try to update my working copy; I basically have to run Cleanup every time before I run an Update.
I did not set up the SVN system here at work, and I have no idea how it’s configured. I have not encountered this kind of “flakiness” with SVN at any job previously that was using it.
EDIT: I am using VisualSVN 1.7.11 and (occasionally) TortoiseSVN, on Windows XP. Repository is hosted on Windows Server 2003 (Standard, I think).
Since this happened also without doing an update/commit/… I’m pretty sure you have an app running that ‘cleans’ up empty files or empty folders, or otherwise messes with your files.
Subversion uses hidden .svn folders to hold its metadata. Some of the files in that folder are empty, and even some of the folders there are usually empty and only filled with files during some operations.
Now, if some other app is removing those empty files and folders, then svn can’t work properly anymore and you can end up with a corrupt/broken working copy, and even get the wrong status.