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

Re: Moving a moved file

From: Folker Schamel <schamel23_at_spinor.com>
Date: 2003-12-27 14:23:13 CET

Branko Čibej wrote:

> Folker Schamel wrote:
>> ...
>>
>>Another sample supporting my agrument of my last email:
>>
>>svn copy A B
>>svn copy B C
>>svn move B D
>>svn commit
>>
>>What log would you expect in this situation?
>
>
> C is a direct descendant of D, which is a direct descendant of A. B was
> never in the repository

I see - but by this you open new, more complicated questions.
For example, what about the following scenarious:

svn copy A B
svn copy B C
svn move B D
modify D
svn commit

svn copy A B
svn copy B C
svn delete B
svn commit

svn copy A B
svn copy B C
svn copy B D
svn copy B E
svn delete B
svn commit

Instead of looking at special cases, maybe it would be help
if you describe the general rules you would like to see
(ignoring implementation difficulties at this stage),
so that it can be directy compared to my proposal.
Can you write this down? Would be great!

>>I am quite sure, you only can get a consistent behavior
>>if the local history does not matter, but only the result
>>at commit time.
>
>
> Local history does matter, when it can be reflected in the repository.
> The move from B to D above cannot be so recorded. However, saying that C
> is a direct descendant of A would be wrong, and the difference is both
> visible and recordable.

I simply don't understand why.
What is the reason for this?
In contrary, I think that saying that C is a descendant of A
is the ONLY correct answer, because everything else
are temporarily local changes.

At the end, it is a question which philosophy you prefer.
For file contents, the local history does not matter,
so I think it is very natural that this also holds for
the directory structure.
In addition, that a move can be represented as add + delete
is very natural I think and should be kept.

Of course, you can define some kind of (wired)
logic of partically(!) recording a local history;
obviously paying the price of an inconsistent philosophy,
and paying the price of much unnecessary additional complexity
(complex history rules), plus giving up natural things
(like move = add + delete).
Do you really think this is the right approach? ;-)

Cheers,
Folker

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Received on Sat Dec 27 14:25:13 2003

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

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.