You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by Stefano Spinucci <vi...@yahoo.it> on 2005/11/01 00:21:57 UTC

[BUG] moving out of date dir/file before update

introduction
============

The following bugs where found on windows NT, with svn version 1.2.3.

I wrote two 'recipes' to reproduce the bugs, using two working copy.

Before every action you 'll find the wk number in which the action must
be executed.



'file alone' bug
================

bug description
---------------

I have a file with revision 'n' in the repo and revision 'n-1' in the 
wk.

Then, I rename the file in the wk BEFORE updating the wk.

Finally I update the wk and commit the move.

The result is that in the wk and in the repo the file is reverted to 
the revision 'n-1', losing the revision 'n'.


bug notes
---------

I guess it's an expected behavior, since move is copy + delete.

However, for an user without the knowledge of the internal definition 
of the move command, I think it can be defined a bug.


recipe
------

wk 1: create the file 'file.txt' ('file.txt' value is "1")
wk 1: svn add 'file.txt'
wk 1: svn ci -m ""
wk 2: svn up
wk 2: modify 'file.txt' ('file.txt' value is now "2")
wk 2: svn ci -m ""
wk 1: svn move 'file.txt' 'file1.txt'
wk 1: svn up
wk 1: svn ci -m ""
wk 1: BUG: 'file.txt' value is "1"; should be "2". 'file.txt' is not
      deleted
wk 2: svn up
wk 2: BUG: 'file.txt' value is "1"; should be "2"



file 'inside a directory' error
===============================

bug description
---------------

Inside a directory, I have a file with revision 'n' in the repo and
revision 'n-1' in the wk.

Then, in the wk I move the directory containing the file BEFORE 
updating the wk.

Finally I update the wk and commit the move.

The result is that in the wk the file is still at revision 'n-1', in 
the repo the file is correctly at revision 'n' and every further
commit of the file (from the wrong wk) 'll fail with the error
'Base checksum mismatch'.


bug notes
---------

The good part is that svn don't let to commit from the wrong repo.

The bad part is that maybe unclear what's the source of the error.


recipe
------

wk 1: svn mkdir 'dir'
wk 1: create, inside the directory 'dir', the file 'file.txt'
      ('file.txt' value is "1")
wk 1: svn add 'file.txt'
wk 1: svn ci -m ""
wk 2: svn up
wk 2: modify 'file.txt' ('file.txt' value is now "2")
wk 2: svn ci -m ""
wk 1: svn move 'dir' 'dir1'
wk 1: svn up
wk 1: svn ci -m ""
wk 1: BUG: 'file.txt' value is "1"; should be "2"
wk 2: svn up ('file.txt' value is correctly "2")
wk 1: svn up (nothing found)
wk 1: modify 'file.txt' ('file.txt' value is now "3")
wk 1: svn ci -m "" (failed with the error 'svn: Base checksum mismatch
      on '/dir1/file.txt'')
      


---
Stefano Spinucci


		
__________________________________ 
Yahoo! FareChase: Search multiple travel sites in one click.
http://farechase.yahoo.com

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