[Pharo-project] git git git

Camillo Bruni camillobruni at gmail.com
Thu Jul 5 09:39:02 EDT 2012

To throw some more oil in the file.
This is how versioning will work in Pharo:
1. I prepared a complete FileSystem representation of all the units in the image
	- Packages
	- Classes
	- Methods

2. Model Resources instead of saving them in CompiledMethod
	- Packages have resources
	- Classes have resources
	- The resources themselves are a complete FileSystem allowing for all normal FS operations
	- See the attached image for a working prototype

3. Choose a decent, existing, stable versioning system (Since I know GIT it's git)
	- it must be distributed
	- it must be stable
	- it must support lazy loading

4. Supporting versioning of the internal tree structure
	- copy over the internal tree to the git repos
	- create a new commit message 
	- upload it to some remote / external / local repository

5. Rewrite .changes file to work on top of a similar structure
	- cache the changes methods in a local git repos
	- commit on a regular interval
	- add support for restoring that

6. Rewrite existing method versions on top of a similar structure
	- lazily load the versions from a remote git location
	- hold the sources in a central git repository (much like PharoV10.sources)


I will provide a working prototype within a week, cause this issue is 
annoying me so much that it makes me feel like a complete retard when
using pharo.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.pharo.org/pipermail/pharo-dev_lists.pharo.org/attachments/20120705/5951ee0b/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Screen Shot 2012-07-05 at 15.15.55.png
Type: image/png
Size: 78358 bytes
Desc: not available
URL: <http://lists.pharo.org/pipermail/pharo-dev_lists.pharo.org/attachments/20120705/5951ee0b/attachment.png>

More information about the Pharo-dev mailing list