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

Reply via email to