[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: Correcting a corrupt checkout

From: Eric Peers <peers_at_mtnboy.net>
Date: Mon, 07 Apr 2008 11:31:33 -0600

I ended up solving my own problem...

the solution was to checkout a fresh copy of the affected directories.
Run a diff on the files that appeared to be in conflict, and in my
"fresh copy" add+checkin the files. Run svn up in the corrupt directory
until it fixes the problem. In one case it did not fix the problem, so I
checked out a parallel copy of the target directory in (~/temp) and then
in 2 xterm windows:

xterm #1: mv dir dir.bak
xterm #2: mv ~/temp/dir ./

this let me do a "hot swap" that fixed the svn problem by replacing the
directories...

   --eric

Eric Peers wrote:
> I have a set of website directories that are managed under a
> subversion repository. 2-3 different users modify files in these
> directories on a daily basis and I have a cronjob automatically commit
> their changes once per day. I think my checkout is corrupt. Obviously
> the easiest solution is to wipe the checkout and then re-check out the
> affected directories. That is not a preferred solution since I might
> lose several file changes -- these files only exist in the working copy.
>
> Is it possible to "freshen up" the .svn directories locally? I.e.
> throw away any locally corrupt copies?
>
> -------------------------------
>
> I think 2-3 things have happened to corrupt this tree:
>
> 1) Users sometimes sftp/scp the entire subdirectory hierarchy to their
> local machine and then copy back. This would include the .svn
> directories. This is bad because they may spend days inbetween the
> copy, thus replacing the existing .svn with a stale copy.
> 2) These users are using Dreamweaver for some of their edits. There
> are "locks" in the local copy, but svnadmin lslocks shows none.
> 3) Some files under rev control get deleted and replaced with a
> directory and vice versa -- but that may be another issue.
>
> So in trying to clean up this directory tree, I was going through
> files one by one and committing them. In one case, I think I have
> files "added" but not committed.
>
> petit.c-loans.com> svn stat
> ? images
> ? email
> A .
>
> petit.c-loans.com> svn commit .
> Adding www.reversemultipliereffect.com
> svn: Commit failed (details follow):
> svn: File already exists: filesystem '/home/subversion/db',
> transaction '2038-1', path
> '/trunk/htdocs/sites/www.reversemultipliereffect.com'
> svn: Your commit message was left in a temporary file:
> svn: '/var/www/html/cloans/sites/svn-commit.tmp'
>
> So how do I examine this transaction?
>
> if I go up one directory, move the directory to the side, and try to
> update fresh:
> svn update www.reversemultipliereffect.com
> svn: Failed to add directory 'www.reversemultipliereffect.com': object
> of the same name is already scheduled for addition
>
>
>
> Thanks!
> --eric
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe_at_subversion.tigris.org
> For additional commands, e-mail: users-help_at_subversion.tigris.org
>

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe_at_subversion.tigris.org
For additional commands, e-mail: users-help_at_subversion.tigris.org
Received on 2008-04-07 19:32:02 CEST

This is an archived mail posted to the Subversion Users mailing list.