You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@subversion.apache.org by "H. S. Teoh" <hs...@quickfur.ath.cx> on 2007/03/17 20:32:25 UTC

svn revert bug?

Hi all, I'm just wondering if anybody has encountered this:

This morning, I was making some experimental changes to my project
(source code under svn of course), when I decided that I don't want
those changes anymore. Since `svn revert` requires an explicit target, I
typed `svn revert *` instead. I didn't notice it at the time, but amid
some skipped files and some reverted files, there was a strange revert
of a file named 'Construct' which hasn't changed for the last few
revisions. After this, `svn stat` shows no changes, so I tried to
rebuild the program, only to encounter a strange error from the build
system, saying it can't build '4maze.c', a file which has been deleted
months ago! Upon closer examination, I found that 'Construct' has been
reverted to a very old revision, back to when '4maze.c' existed.  `svn
stat` shows that the file is up-to-date, and `svn info` claims that it
is the latest revision.  `svn update` is also convinced that it is
perfectly up-to-date, and so does nothing.

I could not get svn to retrieve the latest revision as it seemed to be
convinced that that was the latest version of 'Construct'. Eventually, I
had to `svn revert -r` to the oldest revision in the project, and the
re-update to the latest revision, before the files were up-to-date
again.

Has anybody else seen this problem? Unfortunately, I've been unable to
reproduce it when I tried to repeat the steps I've done.

Now, here's some detailed history about this project, in case any of it
is relevant to finding the cause of this problem: the project started
out in 4maze/trunk/ as a single file, '4maze.c', with 'Construct' added
later. Somewhere along the line, I created a new branch in
4maze/branches/2.0 where I rewrote the code in C++. (This branch is
ancestrally unrelated to trunk/.) Eventually, I `svn cp`d 4maze/trunk/
to 4maze/tags/1.0, `svn delete`d all the files in trunk/, and `svn cp`d
branches/2.0 to trunk/. This included a different version of 'Construct'
which is ancestrally unrelated to the 'Construct' that showed up when I
did the `svn revert *`. Development has mainly proceeded on this new
trunk/ since.

I'm running Subversion 1.4.2 on both the client and server (remote via
SSH).


T

-- 
"Life is all a great joke, but only the brave ever get the point." --
Kenneth Rexroth

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org