Skip to content

Dialects on the (half) branch #8

@dalehenrich

Description

@dalehenrich

Today, I finished up the FileTree implementation of the Cypress package format for Pharo1.3.

Then I proceeded to port FileTree to Squeak4.3. It will be helpful if you take a look at the network view for FileTree, so you can visualize the master, squeak4.3, and pharo1.3 branches:

  1. My initial work was on the master branch and I finished initialwork with a commit at SHA: 3657e6b081cd7c886d2800032e337130056150fd.
  2. I then created the squeak4.3 and pharo1.3 branches.
  3. My initial work was on the squeak4.3 branch and the initial port to Squeak 4.3 commit marked the completion of the initial port.
  4. Then on the pharo1.3 branch I did some cleanup of dead code: a couple of tweaks
  5. Next I used the git cherry-pick command to pick off the changes from my pharo commit: cherry-picked: a couple of tweaks (605a976...).
  6. Next I was actually able to merge from the master branch to the pharo1.3 branch: Merge branch 'master' into pharo1.3.
  7. On the master branch I decided to simply remove the pharo-specific (and be extension the squeak-specific) code, basically leaving the master branch with mostly common code: removed some methods that were only needed by the repository inspecto….
  8. Merged the master branch to the squeak4.3 branch: Merge branch 'master' into squeak4.3
  9. Did a little housekeeping for Monticello (no code changed): 1, 2, configuration commit
  10. Cherry-picked the [configuration commit] into the master branch: 1.0 (dkh.15):...SHA: 4f000b0
  11. then merged again from master branch to pharo1.3 branch and squeak4.3 branch

So far the cherry-picking seems to work ... you want to make sure that you have small granularoty commits so that cherry-picking the commits of interest is easier. I am doing the merges back into the branch to create a visual record of the whether or not the branches are caught up or not ... if the cherry-picking went on without the cross-referencing it might be hard to tell ... I also think that using topic branches for doing incremental work is also a good idea since the main branches are for released code ....

Anyway, I thought it was worth sharing the bit of experience that I've had so far in doing development on parallel branches ...

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions