So far, from what I see, this is an OSProcess issue when under Windows, so it's a bit unfamiliar territory to me.

The design of MonticelloFileTree-Git is to call the 'git' command line to do things, and it rely on OSProcess to provide the primitive. This was by far the fastest way to get things done :)

Thierry

Le 04/11/2013 10:49, kilon alios a écrit :
I can document this , but not before I get really familiar with the
process. Also I have not forgotten my promise to document Nativeboost,
expect a blog post about that really soon.

I tried to use this in windows and I get a failure

ExternalWindowsOSProcess class(Object)>>doesNotUnderstand: #defaultShellPath
PipeableOSProcess
class>>command:environment:workingDir:input:output:error:errorPipelineStream:shellSyntax:
PipeableOSProcess
class>>command:environment:workingDir:input:output:error:errorPipelineStream:
PipeableOSProcess class>>command:
MCFileTreeGitRepository>>gitVersions
MCFileTreeGitRepository>>loadAncestry
MCFileTreeGitRepository>>loadAllFileNames in Block: [ :bar | ...
BlockClosure>>cull:
Job>>run in Block: [ result := block cull: self ]
BlockClosure>>on:do:
Job>>run in Block: [ ...
BlockClosure>>ensure:
Job>>run
MorphicUIManager(UIManager)>>displayProgress:from:to:during:
ByteString(String)>>displayProgressFrom:to:during:
MCFileTreeGitRepository>>loadAllFileNames
MCFileTreeGitRepository>>allFileNames
MCFileTreeGitRepository>>readableFileNames
MCFileTreeGitRepository>>packageDescriptionsFromReadableFileNames
MCFileTreeGitRepository(MCFileBasedRepository)>>retrieveVersionsWithPackageNames:
MCFileTreeGitRepositoryInspector(MCFileRepositoryInspector)>>refresh
MCFileTreeGitRepositoryInspector(MCFileRepositoryInspector)>>setRepository:workingCopy:
in Block: [ ...
BlockClosure>>newProcess in Block: [ ...

I have loaded both OSProcess and OSWindows , are there other
dependencies on Windows I need to load ?



On Mon, Nov 4, 2013 at 6:46 AM, Tudor Girba <[email protected]
<mailto:[email protected]>> wrote:

    Exactly. This would be a valuable contribution. Screencasts would be
    very helpful as well.

    Doru




    On Mon, Nov 4, 2013 at 12:04 AM, Stéphane Ducasse
    <[email protected] <mailto:[email protected]>> wrote:

        one of you should write a blog entry on Git support and the
        process :)
        Because we will get this repeat that often.

        Stef



        On Nov 3, 2013, at 2:11 PM, kilon alios <[email protected]
        <mailto:[email protected]>> wrote:

        ok it was my bad, i had not correctly initialized my git repo.
        Now it works fine. Thanks for the help this awesome.


        On Sun, Nov 3, 2013 at 2:56 PM, kilon alios
        <[email protected] <mailto:[email protected]>> wrote:

            I installed OSProcess but I get a new Error : Git Error :
            bad default revision 'Head'

            just to clarify i try to commit to an existing git repo
            that I have create manually via terminal.


            MCFileTreeGitRepository(Object)>>error:
            MCFileTreeGitRepository>>gitVersions
            MCFileTreeGitRepository>>loadAncestry
            MCFileTreeGitRepository>>loadAllFileNames in Block: [ :bar
            | ...
            BlockClosure>>cull:
            Job>>run in Block: [ result := block cull: self ]
            BlockClosure>>on:do:
            Job>>run in Block: [ ...
            BlockClosure>>ensure:
            Job>>run
            MorphicUIManager(UIManager)>>displayProgress:from:to:during:
            ByteString(String)>>displayProgressFrom:to:during:
            MCFileTreeGitRepository>>loadAllFileNames
            MCFileTreeGitRepository>>allFileNames
            MCFileTreeGitRepository>>readableFileNames
            
MCFileTreeGitRepository(MCFileTreeRepository)>>allFileNamesForVersionNamed:
            
MCFileTreeGitRepository(MCDirectoryRepository)>>includesVersionNamed:
            MCWorkingCopy>>uniqueVersionNameIn: in Block: [ ...
            BlockClosure>>cull:
            Job>>run in Block: [ result := block cull: self ]
            BlockClosure>>on:do:
            Job>>run in Block: [ ...
            BlockClosure>>ensure:
            Job>>run
            MorphicUIManager(UIManager)>>displayProgress:from:to:during:
            ByteString(String)>>displayProgressFrom:to:during:
            MCWorkingCopy>>uniqueVersionNameIn:
            MCWorkingCopy>>newVersionIn:
            MCWorkingCopyBrowser>>basicSaveVersionIn: in Block: [ ...
            WorldState>>runStepMethodsIn:



            On Sun, Nov 3, 2013 at 2:40 PM, GOUBIER Thierry
            <[email protected] <mailto:[email protected]>>
            wrote:

                Oh sorry, the OSProcess dependency is missing :(

                You can install OSProcess from the configuration
                browser in your Pharo image or, on the command line :

                $ pharo Pharo.image config
                http://ss3.gemstone.com/ss/MetaRepoForPharo20
                ConfigurationOfOSProcess --install=stable

                Thierry

                
------------------------------------------------------------------------
                *De :* Pharo-dev [[email protected]
                <mailto:[email protected]>] de la part
                de kilon alios [[email protected]
                <mailto:[email protected]>]
                *Date d'envoi :* dimanche 3 novembre 2013 13:30

                *À :* Pharo Development List
                *Objet :* Re: [Pharo-dev] Github and Pharo

                look like it cant find PipeableOSProcess on Macos, any
                idea where I can find this object ?

                UndefinedObject(Object)>>doesNotUnderstand: #command:
                MCFileTreeGitRepository>>gitVersions
                MCFileTreeGitRepository>>loadAncestry
                MCFileTreeGitRepository>>loadAllFileNames in Block: [
                :bar | ...
                BlockClosure>>cull:
                Job>>run in Block: [ result := block cull: self ]
                BlockClosure>>on:do:
                Job>>run in Block: [ ...
                BlockClosure>>ensure:
                Job>>run
                MorphicUIManager(UIManager)>>displayProgress:from:to:during:
                ByteString(String)>>displayProgressFrom:to:during:
                MCFileTreeGitRepository>>loadAllFileNames
                MCFileTreeGitRepository>>allFileNames
                MCFileTreeGitRepository>>readableFileNames
                
MCFileTreeGitRepository(MCFileTreeRepository)>>allFileNamesForVersionNamed:
                
MCFileTreeGitRepository(MCDirectoryRepository)>>includesVersionNamed:
                MCWorkingCopy>>uniqueVersionNameIn: in Block: [ ...
                BlockClosure>>cull:
                Job>>run in Block: [ result := block cull: self ]
                BlockClosure>>on:do:
                Job>>run in Block: [ ...
                BlockClosure>>ensure:
                Job>>run
                MorphicUIManager(UIManager)>>displayProgress:from:to:during:
                ByteString(String)>>displayProgressFrom:to:during:
                MCWorkingCopy>>uniqueVersionNameIn:
                MCWorkingCopy>>newVersionIn:
                MCWorkingCopyBrowser>>basicSaveVersionIn: in Block: [ ...
                WorldState>>runStepMethodsIn:



                On Sun, Nov 3, 2013 at 12:41 PM, GOUBIER Thierry
                <[email protected]
                <mailto:[email protected]>> wrote:

                    This is where you use GitFileTree.

                    GitFileTree will do you the commit, browsing the
                    git logs and accessing all versions of your
                    package in the git repo (browsing, loading,
                    changes with the same GUI and look as a
                    smalltalkhub repo). It won't do the push,
                    however(*). It will show you the current branch in
                    the repo too (**).

                    For pharo3, GitFileTree is available with:

                    $ pharo Pharo.image eval --save Gofer new url:
                    
\'http://smalltalkhub.com/mc/ThierryGoubier/MonticelloFileTree-Git/main\
                    
<http://smalltalkhub.com/mc/ThierryGoubier/MonticelloFileTree-Git/main%5C>'\;
                    package: \'MonticelloFileTree-Git\'\; load

                    For pharo2, there is a group named
                    'MonticelloFileTree-Git' in FileTree configuration.

                    Feel free to ask if you have any questions or
                    suggestions on it!

                    Thierry

                    (*) It would be easy to do commit + push in one
                    go, but, I'm not sure I'd like to do a push each
                    time I do a commit. I tend to prefer a push a day.
                    Maybe something like a marker in the repository
                    inspector to remind me I have something to push?
                    (**) It doesn't change branches, and there is no
                    support for branches in Monticello... This tend to
                    trigger bugs in MC package cache.

                    
------------------------------------------------------------------------
                    *De :* Pharo-dev
                    [[email protected]
                    <mailto:[email protected]>] de la
                    part de kilon alios [[email protected]
                    <mailto:[email protected]>]
                    *Date d'envoi :* dimanche 3 novembre 2013 10:16
                    *À :* Pharo Development List
                    *Objet :* Re: [Pharo-dev] Github and Pharo

                    Thank you for your efforts , I have installed
                    filetree using the instructions provided in the
                    github pages for pharo 3. I was also successful
                    into generating the local files for my packages
                    that I have inserted to my git folder. I can
                    manually git commit and git push them from
                    terminal but how I do this from inside
                    Monticello-Filetree ?


                    On Sun, Nov 3, 2013 at 9:53 AM, GOUBIER Thierry
                    <[email protected]
                    <mailto:[email protected]>> wrote:

                        Hi,

                        I've used github and work_owned git
                        repositories as primary workplaces for more
                        than a year. First with FileTree, then I wrote
                        GitFileTree to make that process simpler.

                        Thierry
                        
------------------------------------------------------------------------
                        *De :* Pharo-dev
                        [[email protected]
                        <mailto:[email protected]>] de
                        la part de kilon alios [[email protected]
                        <mailto:[email protected]>]
                        *Date d'envoi :* samedi 2 novembre 2013 14:59
                        *À :* Pharo Development List
                        *Objet :* [Pharo-dev] Github and Pharo

                        So any information on how Pharo can be used
                        with Github ?

                        all I have is this

                        https://github.com/dalehenrich/FSGit

                        I dont need much, just basic git pull, push,
                        clone, add and rm should do fine for starter.

                        But of course I am interesting into learning
                        what can be done, what is available , who
                        needs help with what.  Github is something
                        really important for me, so I am willing to
                        contribute as much I can into bringing Pharo
                        closer to it.

                        My interest is using Github in place of
                        smalltalkhub and squeaksource. I was planning
                        to implement something like an App Store (not
                        the purchase  system) for Pharo  libraries and
                        I would love to use github as a backend to it
                        and git of course.









    --
    www.tudorgirba.com <http://www.tudorgirba.com>

    "Every thing has its own flow"



--
Thierry Goubier
CEA list
Laboratoire des Fondations des Systèmes Temps Réel Embarqués
91191 Gif sur Yvette Cedex
France
Phone/Fax: +33 (0) 1 69 08 32 92 / 83 95

Reply via email to