On Mon, Dec 1, 2014 at 10:39 AM, Thierry Goubier <[email protected]> wrote:
> Le 01/12/2014 19:21, Esteban Lorenzano a écrit : > >> >> also, in a point (not now, but eventually)… we will need to drop >> something. The idea of keeping anything ad eternum just does not scales. >> > > But it's a good way of delaying git integration in the Pharo platform by > having to redesign the file format as well. > > Thierry, Not sure if you are being sarcastic here:) I just don't see how the current FileTree format "delays git integration in the Pharo platform." I consider git integrated into tODE and tODE uses FileTree. Perhaps it's a matter of approach. In tODE the git support is NOT centered on the package browser ... the git support is built into the "system browser" so you can look at git history from a class, method OR package perspective ... Other perspectives are possible as it is relatively straightforward to pull up the git history of any directory or file ... and git integration should include the ability to view diffs and merge non-smalltalk files... A package is just one of the artifacts that is stored in a git repository. Monticello packages have Monticello characteristics ... Cypress packages without Monticello meta data[1] are another package format and they have slightly different characteristics than Monticello packages and they are equally supported by tODE. [To be fair the Cypress package support is still experimental but a year ago I was doing active development using tODE and Cypress packages in conjunction with Monticello packages]. FileTree intentionally supports Monticello-style packages so that the FileTree packages can leverage the existing Monticello-based tools like Metacello (I had to extend Metacello to support Cypress-based packages) or the Monticello Browser. So at the end of the day, I think that git integration for Pharo depends upon a broader approach to integrating git-based tools throughout the tool eco-system. Once you start looking at a chunk of versioned disk as containing more than just Smalltalk source code there a numerous possibilities for building in-image tool support for distributing, sharing and maintaining documentation, workspaces, plugins, deployment scripts, etc. way beyond the limitations of a package ... Dale [1] https://github.com/rjsargent/CypressReferenceImplementation
