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

Re: Tortoise gets confused when branches are renamed

From: Stefan Küng <tortoisesvn_at_gmail.com>
Date: Thu, 07 May 2009 21:39:29 +0200

Bob Archer wrote:
>>>> I then show the log of /branches/bugfix-2009-03-27. I go to rev 869,
>> and
>>>> see the change I made. It appears as
>> "/branches/bugfix/Till/Reports.cs". I
>>>> right click on the file in the bottom pane, and choose "Show changes"
>> or
>>>> "Show changes as unified diff".
>>>>
>>>> Tortoise tells me there are no changes!
>>> That's because there are no changes. Your changes are in
>> /branches/bugfix-2009-03-27 not in /branches/bugfix.
>>
>> So how do I see the changes in /branches/bugfix-2009-03-27? That is the
>> branch whose log I am looking at, in whose window I am right clicking. Why
>> is it showing me changes from a branch which didn't even exist at the time
>> of the change I am clicking on, rather than the branch I am looking at?
>
> Ok... here is what I read of your message... tell me if I have it wrong.
>
> 1. You copied from /trunk to /branches/bugfix
>
> 2. You switched to /branches/bugfix or you checked out that branch.
>
> 3. You made a change and committed it to /branches/bugfix.
>
> 4. You moved /branches/bugfix to /branches/bugfix-2009-03-27 (Which does a copy then a delete)
>
> 5. You then copied from /trunk to /branches/bugfix again.
>
> 6. You expect to see the change you made earlier in /branches/bugfix (Step 3). If this is the case you will not see it. That is expected.
>
> You will see the change in /branches/bugfix-2009-03-27 (Make sure you don't have "stop on copy" selected on the bottom of the log dialog.)
>
> Is this the correct scenario or am I missing something?

I think this is correct, and Nikki is also correct that this confuses
the log dialog. Because the log dialog uses HEAD as the peg revision
when diffing such files. And in that case, HEAD is the wrong peg
revision: it should be the revision before the new 'bugfix' branch was
created.

Using HEAD as the peg revision works in most cases though. Only in cases
where a folder got 'replaced' with a new one, then it won't work. But I
think that's a small burden if we can avoid ever having to show a dialog
and ask the user for a peg revision (most users won't even know what a
peg revision is!).

As a workaround, you can use the repo browser, go back to that revision,
then show the log from the repository browser at that revision - from
there, the diff should work.

Stefan

-- 
       ___
  oo  // \\      "De Chelonian Mobile"
 (_,\/ \_/ \     TortoiseSVN
   \ \_/_\_/>    The coolest Interface to (Sub)Version Control
   /_/   \_\     http://tortoisesvn.net
------------------------------------------------------
http://tortoisesvn.tigris.org/ds/viewMessage.do?dsForumId=4061&dsMessageId=2099536
To unsubscribe from this discussion, e-mail: [users-unsubscribe_at_tortoisesvn.tigris.org].

Received on 2009-05-07 21:39:59 CEST

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