0

I upgraded my version of TortoiseSVN awhile back and believe I did so without committing all local changes first. I have updated a number of working copies fine, but I just attempted to upgrade another one I haven't used in awhile and it told me that a file was corrupt and to run svn cleanup or to do a fresh svn checkout.

I found this question and his problem is pretty much the same as mine, same menu options which are lacking the cleanup option as well as the checkout option.

From the answers it seems like I should do a fresh svn checkout; however I am confused on how to do that as I don't see the svn checkout option as a selectable option when I right click on the working copy.

I thought if just copying all the files within the working copy and then doing a svn checkout on that, but the folder is still filled with .svn folders, which I assume would cause a problem if I copied them over as well.

What do I do here? I have local changes I want to keep so I can't just pull all the files from the repository into a new folder. How can I do a fresh checkout or fix my situation?

Community
  • 1
  • 1
Brett
  • 19,449
  • 54
  • 157
  • 290
  • It might be worth getting a command-line version of subversion that matched your old version, and trying to use that to clean up the working copy. Then you could upgrade that with Tortoise. When people say a new checkout they probably mean into a new directory, not into your old working copy. It should be possible to filter out the .svn folders, either manually or using command line tools too e.g. find from cygwin or msys git. – Rup May 28 '15 at 08:56
  • @Rup Thanks. Yeah, I guess I may have to go that route of finding a program that can filter out the .svn folders. – Brett May 28 '15 at 09:02
  • Starting with Subversion 1.7, a working copy has only single `.svn` directory at its root. It seems that the corrupted working copy was created with a very old and unsupported Subversion client version. – bahrep May 28 '15 at 10:25
  • @bahrep I believe it was `1.4.3` or something. – Brett May 28 '15 at 10:47
  • @Brett Ouch! **25 January 2007**. Use Subversion 1.8 or at least 1.7. – bahrep May 28 '15 at 10:51
  • @bahrep haha..... well I'm on 1.8.6 now, just that I never bothered to update that repository until now. – Brett May 28 '15 at 12:39

1 Answers1

1

The easiest way would be to delete all the .svn folders, check out the target url/revision into a new folder, and then move the newly created .svn folder(s) into the old working copy. At that point I would then make another local copy of the working copy folder (in case the next step goes wrong), svn update, and then commit the uncommitted changes.

Stephen Kennedy
  • 20,585
  • 22
  • 95
  • 108