For Programmers: Free Programming Magazines  


Home > Archive > Smalltalk > October 2004 > [VW7.2.1] How to extract the difference between parcels?









You are viewing an archived Text-only version of the thread. To view this thread in it's original format and/or if you want to reply to this thread please [click here]

 

Author [VW7.2.1] How to extract the difference between parcels?
A-S Koh

2004-10-21, 4:05 pm

I have two parcels that are very similar. One of them having some
updates. How can I recover the updates only without error.

Thanks,
Koh
Eliot Miranda

2004-10-25, 8:57 pm



A-S Koh wrote:
> I have two parcels that are very similar. One of them having some
> updates. How can I recover the updates only without error.
>
> Thanks,
> Koh



Here are two ways, one with either parcel loaded in an image, one without.

A. with version A loaded in the image, use 2 change lists to get the
differences
1a. open a ChangeList
Launcher->Tools->ChangeList
2a. in the ChangeList Display the Parcel
ChangeList->File->Display Parcel...
3a. read version B's source file into the same ChangeList
ChangeList->File->Read File(s)... and select version B's .pst
4a. remove the exact duplicates
ChangeList->Remove->Exact Duplicates
this marks as removed any methods in version A that are exactly
the same as version B, as Remove Exact Duplicates removes all
identical versions of any change other than the last one (if
you hold the shift it removes all identical versions of any
change other than the first one).
5a. mark as removed version B's changes. Select any change from
version B, and check the "file" check-box to filter only version
B's source file.
6a. discard all the "marked as removed" changes, leaving only those
changes in version A that are different to version B.
ChangeList->Forget->Forget All Marked

1b. open a ChangeList
Launcher->Tools->ChangeList
2b. in the ChangeList Display the Parcel
ChangeList->File->Display Parcel...
3b. read version B's source file into the same ChangeList
ChangeList->File->Read File(s)... and select version B's .pst
4b. remove the exact duplicates _HOLDING THE SHIFT KEY_ to remove
the last duplicates, i.e. those in version B.
ChangeList->Remove->Exact Duplicates
this marks as removed any methods in version B that are exactly
the same as version A.
5b. mark as removed version A's changes. Select any change from
version B, and check the "file" check-box to filter only version
A's source file.
6b. discard all the "marked as removed" changes, leaving only those
changes in version B that are different to version A.
ChangeList->Forget->Forget All Marked

Note that you don't need to repeat steps 1b through 3b if after 3a
you do ChangeList->Find->Spawn All to create a duplicate CHangeList.


B. Method B is the same, but instead of using Display Parcel.. to
display version A, just load version A's source file using
ChangeList->Read File(s)...


The ChangeList operates on "changes", which are objects that reference
class, method, namespace, and shared variable definitions, doits, class
reorganizations that are either in the system or parsed from a source
file. It then provides numerous filtering and comparison operations
that you can use to reason about and manage changes. See Managing
Smalltalk Code in the Application Developer's Guide.
--
_______________,,,^..^,,,____________________________
Eliot Miranda Smalltalk - Scene not herd

Sponsored Links







Also available: Server administration forum archive | Web Design forum archive | Software forum archive | Hardware reviews archive

Copyright 2008 codecomments.com