Le 21/10/2015 21:58, Hilaire a écrit :
Thanks for the details it will be helpful, but I wanted to know where is the .mcz package?
Just use the ConfigurationOfGitFileTree available in your Configuration browser in the image ;) Or Metacello new configuration: 'GitFileTree'; repository: 'http://smalltalkhub.com/mc/Pharo/MetaRepoForPharo30/main'; load Thierry
Hilaire
Le 21/10/2015 21:29, Thierry Goubier a écrit :
Le 21/10/2015 21:09, Hilaire a écrit :
Le 20/10/2015 16:32, Thierry Goubier a écrit :
Done. The configuration has been updated for Pharo3.
Où dois-je regarder ?
Look the following methods in MCFileTreeGitRepository, protocole git querying:
gitBranchs gitCloneRepositoryAndCheckoutIn: gitNeedPush gitPull gitPush gitVersions gitVersionsForPackage:
and in i/o
writeRepositoryProperties
and in MCFileTreeGitStReader
zip
The two definition related methods (#zipForDefinition:, #gitVersionsForDefinition:in:) are optional: they allow you to query method versions in the git repository as if it was the change set, and they are only available from the AltBrowser IDE.
For an adaptation to Fossil, I believe all the main code can be reused (same use of SHA-1 commit ids, branches, monticello metadata recreation) with very similar commands (fossil x instead of git x). The main difference being, as far as I know, the use of git archive to retrieve a zip containing a version of a package; I haven't seen the equivalent command in Fossil.
The base OSProcess / ProcessWrapper code is a bit long, but I prefer to keep it that way for reliability reasons: it took me a long time (literaly years) to reach a stable solution on Unix. (MCFileTreeGitRepository>>#runOSProcessGitCommand:in:)
Thierry