code repository options

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
10 messages Options
Reply | Threaded
Open this post in threaded view
|

code repository options

Robert Withers
I am interested in keeping my code on github. Is there a way to connect,
browse, load github-based Pharo code?

What are all the options for storing code onthe net and interacting with
it in Pharo?

Many thanks,
R

Reply | Threaded
Open this post in threaded view
|

Re: code repository options

Thierry Goubier
Le 16/10/2015 06:40, Robert Withers a écrit :
> I am interested in keeping my code on github. Is there a way to connect,
> browse, load github-based Pharo code?

Yes, there is:

- filetree + git by hand (included in the image)
- gitfiletree (filetree + calls git for you)
(ConfigurationOfGitFileTree) (Windows support is getting better)
- github:// urls (for distribution of your code) (included in the image)

If you're a lot into branching, you'll have to take a look at the
gitfiletree merge driver (on github).

Thierry

> What are all the options for storing code onthe net and interacting with
> it in Pharo?

All solutions above also work with bitbucket.

GitFileTree will work with anything which has a git interface.

Regards,

Thierry

> Many thanks,
> R
>
>


Reply | Threaded
Open this post in threaded view
|

Re: code repository options

Robert Withers
Thank you for your guidance. I went with bitbucket and gitfiletree. I'm
investigating adding my repo to the Monticello browser using gitfiletree.

cheers,
Robert

On 10/16/2015 01:03 AM, Thierry Goubier wrote:

> Le 16/10/2015 06:40, Robert Withers a écrit :
>> I am interested in keeping my code on github. Is there a way to connect,
>> browse, load github-based Pharo code?
>
> Yes, there is:
>
> - filetree + git by hand (included in the image)
> - gitfiletree (filetree + calls git for you)
> (ConfigurationOfGitFileTree) (Windows support is getting better)
> - github:// urls (for distribution of your code) (included in the image)
>
> If you're a lot into branching, you'll have to take a look at the
> gitfiletree merge driver (on github).
>
> Thierry
>
>> What are all the options for storing code onthe net and interacting with
>> it in Pharo?
>
> All solutions above also work with bitbucket.
>
> GitFileTree will work with anything which has a git interface.
>
> Regards,
>
> Thierry
>
>> Many thanks,
>> R
>>
>>
>
>

Reply | Threaded
Open this post in threaded view
|

Re: code repository options

Sean P. DeNigris
Administrator
In reply to this post by Thierry Goubier
Thierry Goubier wrote
Yes, there is:
I've really enjoyed working wit GitHub for social coding, and Bitbucket as well for my private projects (for which it's free). I flip flop back and forth between Thierry's first two options (filetree and gitfiletree), depending on my use case and mood. GitFileTree certainly seems to be the most automatic approach, but filetree + git command line is not too much more, and allows one to take advantage of more git features e.g. many commits for sanity purposes, squashed into one when a feature/issue is ready. Also, you can do one-commit-per-logical-milestone as opposed to GitFileTree's more (maybe too ;)) finely-grained one-commit-per-package

The biggest pain I felt was losing Versionner and having to go back to editing Metacello artifacts by hand :/ This is because Git's main MetaC artifact is the BaselineOf instead of ConfigurationOfXyz. Although on the bright side, the really cool thing that Dale had to explain to me a few times before I got it is - compared to a Configuration's baseline###, a BaselineOf is really simplified because by the time you have the baseline, you already have accessed a specific commit in a specific repository, so none of this info has to be captured in the baseline!
Cheers,
Sean
Reply | Threaded
Open this post in threaded view
|

Re: code repository options

Thierry Goubier
Hi Sean,

2015-11-05 17:24 GMT+01:00 Sean P. DeNigris <[hidden email]>:
Thierry Goubier wrote
> Yes, there is:

I've really enjoyed working wit GitHub for social coding, and Bitbucket as
well for my private projects (for which it's free). I flip flop back and
forth between Thierry's first two options (filetree and gitfiletree),
depending on my use case and mood. GitFileTree certainly seems to be the
most automatic approach, but filetree + git command line is not too much
more, and allows one to take advantage of more git features e.g. many
commits for sanity purposes, squashed into one when a feature/issue is
ready. Also, you can do one-commit-per-logical-milestone as opposed to
GitFileTree's more (maybe too ;)) finely-grained one-commit-per-package

I hijack the subject. Has it an effect that you loose access to some of the versions of your packages when you delay committing with git + filetree?
 
The biggest pain I felt was losing Versionner and having to go back to
editing Metacello artifacts by hand :/ This is because Git's main MetaC
artifact is the BaselineOf instead of ConfigurationOfXyz. Although on the
bright side, the really cool thing that Dale had to explain to me a few
times before I got it is - compared to a Configuration's baseline###, a
BaselineOf is really simplified because by the time you have the baseline,
you already have accessed a specific commit in a specific repository, so
none of this info has to be captured in the baseline!

Doesn't Versionner has the ability to create baselines (ok, baselines inside Configurations) ?

Thierry
 



-----
Cheers,
Sean
--
View this message in context: http://forum.world.st/code-repository-options-tp4855913p4859391.html
Sent from the Pharo Smalltalk Developers mailing list archive at Nabble.com.


Reply | Threaded
Open this post in threaded view
|

Re: code repository options

Dale Henrichs-3


On 11/05/2015 08:52 AM, Thierry Goubier wrote:
Hi Sean,

2015-11-05 17:24 GMT+01:00 Sean P. DeNigris <[hidden email]>:
Thierry Goubier wrote
 
The biggest pain I felt was losing Versionner and having to go back to
editing Metacello artifacts by hand :/ This is because Git's main MetaC
artifact is the BaselineOf instead of ConfigurationOfXyz. Although on the
bright side, the really cool thing that Dale had to explain to me a few
times before I got it is - compared to a Configuration's baseline###, a
BaselineOf is really simplified because by the time you have the baseline,
you already have accessed a specific commit in a specific repository, so
none of this info has to be captured in the baseline!

Doesn't Versionner has the ability to create baselines (ok, baselines inside Configurations) ?


It may have been the case that Versionner was missing some supporting code from the MetacelloToolBox. For tODE I finally got around to generating baselines for a new project and I finally ended up adding some support to Metacello for building a BaselineOf[1].

Dale

[1] https://github.com/dalehenrich/metacello-work/issues/162
Reply | Threaded
Open this post in threaded view
|

Re: code repository options

Sean P. DeNigris
Administrator
Dale Henrichs-3 wrote
I finally ended up adding
some support to Metacello for building a BaselineOf[1].
Great! I opened an issue and added that info:
Issue  16948: Versionner: Support BaselineOf's
https://pharo.fogbugz.com/f/cases/16948/Versionner-Support-BaselineOf-s
Cheers,
Sean
Reply | Threaded
Open this post in threaded view
|

Re: code repository options

Sean P. DeNigris
Administrator
In reply to this post by Thierry Goubier
Thierry Goubier wrote
Has it an effect that you loose access to some of the
versions of your packages when you delay committing with git + filetree?
I usually just delay the commit in order to save all packages related to a feature, not to save multiple versions of the same package, so I haven't run into that yet.
Cheers,
Sean
Reply | Threaded
Open this post in threaded view
|

Re: code repository options

Thierry Goubier
Le 07/11/2015 18:30, Sean P. DeNigris a écrit :
> Thierry Goubier wrote
>> Has it an effect that you loose access to some of the
>> versions of your packages when you delay committing with git + filetree?
>
> I usually just delay the commit in order to save all packages related to a
> feature, not to save multiple versions of the same package, so I haven't run
> into that yet.

Hum.

There is this behavior in GitFileTree (saving multiple packages with one
commit) but it is only active when you save a package and its
dependencies (as in a Slice).

In short, yes, it would be easy to automate if the right concepts and
actions were available above the repository. As usual :(

Thierry




Reply | Threaded
Open this post in threaded view
|

Re: code repository options

Dale Henrichs-3


On 11/7/15 9:52 AM, Thierry Goubier wrote:

> Le 07/11/2015 18:30, Sean P. DeNigris a écrit :
>> Thierry Goubier wrote
>>> Has it an effect that you loose access to some of the
>>> versions of your packages when you delay committing with git +
>>> filetree?
>>
>> I usually just delay the commit in order to save all packages related
>> to a
>> feature, not to save multiple versions of the same package, so I
>> haven't run
>> into that yet.
>
> Hum.
>
> There is this behavior in GitFileTree (saving multiple packages with
> one commit) but it is only active when you save a package and its
> dependencies (as in a Slice).
>
> In short, yes, it would be easy to automate if the right concepts and
> actions were available above the repository. As usual :(
>
> Thierry
For tODE, I manage commits and loads, reverts, etc. at the Metacello
project level - all dirty packages in a project are committed at once
... you can revert a project and all dirty packages are reverted,
merging, etc .... There's a certain amount that can be done through the
Metacello api, but I've ended up building a "project model" that wraps
Metacello ...

Dale