Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I had to reformat my PC from scratch. I restored my backup data, including a directory containing SVN repositories and a directory containing check-outs of those repositories. These check-outs contain work that has not been checked-in yet.

When I try to check-in, SVN dumps error messages. I could trace it to the fact that I have changed the location of these directories from:

C:/Users/J%C3%A9r%C3%B4me/Documents/Java/Repositories/...
C:/Users/J%C3%A9r%C3%B4me/Documents/Java/CheckOut/...

to:

C:/Users/JVerstry/Documents/Java/Repositories/...
C:/Users/JVerstry/Documents/Java/CheckOut/...

Yes, I choose a different user account name when re-installing my machine. And yes, svn does not manage to fall back on its feet.

How can I solve this issue? I checked the content of files located in .svn hidden repositories and it seems like they contain lines such as:

file:///C:/Users/J%C3%A9r%C3%B4me/Documents/Java/Repositories/...

I was thinking may be I could use a tool to scan those files and replace J%C3%A9r%C3%B4me with JVerstry. Is such a tool available for Windows 7? And is this a good idea?

EDIT

I turns out that my issues are deeper than described above. Some of my .svn directories seem corrupted + some directories seem to be locked and cannot be unlocked (SVN dumps error messages...) + some directories are missing in the /db directory of every repository.

share|improve this question

2 Answers 2

I think you should be able to solve that by using svn switch to tell Subversion that you are talking to "another" repo. --relocate may be needed in this scenario, I think.

share|improve this answer
    
The problem is that svn complains that there are locks, and it won't remove them, even with clean-up –  JVerstry Jun 17 '11 at 15:31
up vote 1 down vote accepted

I tried the idea of modifying J%C3%A9r%C3%B4me to JVerstry, but it did not work. However, I found a solution to all my issues.

For each repository:

  1. I checked-out the content of the repository into a /NewCheckOut directory.
  2. I created a patch from my existing /CheckOut directory to capture all modifications made on existing files, but not files added since last check-out.
  3. I applied the patch to my /NewCheckOut directory. I had to make one manual intervention to solve some incompatibility issue.
  4. When trying to check-in /NewCheckOut, I face the issue mentioned here. I created the missing directories in /db. The check-in went fine after.
  5. In order to retrieve added files, I exported the content of my existing /CheckOut directory in /ExportCheckOut. This gets rid of the corrupted /.svn.
  6. I used Windows explorer to copy all content of /ExportCheckOut in /NewCheckOut.
  7. I made sure code compiled fine.
  8. I checked-in /NewCheckOut again.

Problem solved. I don't exactly know what caused it though...

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.