Dale,
About a year ago we had a conversation on github migration. Now i have a stable version of my application i want to migrate the code to github. Back then the step were these: (are these steps still correct to migrate to github ?) (the step 2. is refering to the gemstone host or the windows tode client ? in which machine perform the file copy and git init?) 1. create GitHub project (done: https://github.com/brunobuzzi/OrbeonPersistenceLayer) 2. create a local git repository (using `git init` in an empty directory called OrbeonPersistenceLayer). In the dev branch of GsDevKitHome, the place to put shared git repositories is $GS_HOME/tode/sys/local/git (using bash): mkdir $GS_HOME/tode/sys/local/git/OrbeonPersistenceLayer mkdir $GS_HOME/tode/sys/local/git/OrbeonPersistenceLayer/repository 3. copy each of the active packages from the SS3 repo to your local git repo: mc copy Orbeon_Persistence_API-BrunoBB-0.039 http://ss3.gemtalksystems.com/ss/OrbeonPersistenceAPI filetree://$GS_HOME/tode/sys/local/git/OrbeonPersistenceLayer/repository mc copy Orbeon_Persistence-BrunoBB-0.019 http://ss3.gemtalksystems.com/ss/OrbeonPersistenceAPI filetree://$GS_HOME/tode/sys/local/git/OrbeonPersistenceLayer/repository 4. create a BaselineOfOrbeonPersistenceLayer class: cls create BaselineOfOrbeonPersistenceLayer BaselineOf BaselineOfOrbeonPersistenceLayer cls protocol --add=BaselineOfOrbeonPersistenceLayer baseline browse class BaselineOfOrbeonPersistenceLayer 5. add a baseline: method to BaselineOfOrbeonPersistenceLayer that looks something like the following (no tODE command - sorry:): baseline: spec <baseline> spec for: #'common' do: [ spec package: 'Orbeon_Persistence'; package: 'Orbeon_Persistence_API' with: [ spec requires: 'Orbeon_Persistence' ]; yourself. spec group: 'default' with: #('Core'); group: 'Core' with: #('Orbeon_Persistence_API'); yourself ]. 6. create a BaselineOfOrbeonPersistenceLayer package mc create BaselineOfOrbeonPersistenceLayer 7. associate the filetree repo with the new package: mr add filetree://$GS_HOME/tode/sys/local/git/OrbeonPersistenceLayer/repository BaselineOfOrbeonPersistenceLayer 8. save the baseline to the repo: mc commit BaselineOfOrbeonPersistenceLayer `initial baseline and packages` 9. Create the project entry: project entry --baseline=OrbeonPersistenceLayer --repo=filetree://$GS_HOME/tode/sys/local/git/OrbeonPersistenceLayer/repository /sys/stone/projects 10. Load the project (testing your baseline): project load OrbeonPersistenceLayer 11. Write the new baseline to the filetree repository and do a git commit: project commit --git --message=`initial commit for project packages and baseline` OrbeonPersistenceLayer project list 12. Hook up your local git repo to your github repo something like the following (follow github instructions to get it exactly right): git remote add origin [hidden email]:brunobuzzi/OrbeonPersistenceLayer.git git push origin master ... and I think that's it... Let me know how things work for you. I've create a gist on github[4] with all of the tode comands extracted out (source code is in middle) for easy copy/paste. Dale [1] https://github.com/dalehenrich/tode/issues/188 [2] https://github.com/dalehenrich/metacello-work/blob/master/docs/GettingStartedWithGitHub.md#create-baseline [3] https://github.com/dalehenrich/metacello-work/blob/master/docs/GettingStartedWithGitHub.md [4] https://gist.github.com/dalehenrich/001ab961bd599b3efac1 _______________________________________________ |
Hello Bruno,
There are some adjustments to the process ... in-lined below On 07/11/2016 09:14 AM, BrunoBB via Glass wrote: > Dale, > > About a year ago we had a conversation on github migration. Now i have a > stable version of my application i want to migrate the code to github. > > Back then the step were these: (are these steps still correct to migrate to > github ?) > (the step 2. is refering to the gemstone host or the windows tode client ? > in which machine perform the file copy and git init?) > > 1. create GitHub project (done: > https://github.com/brunobuzzi/OrbeonPersistenceLayer) > 2. create a local git repository (using `git init` in an empty directory > called > OrbeonPersistenceLayer). In the dev branch of GsDevKitHome, the > place to put shared > git repositories is $GS_HOME/tode/sys/local/git (using bash): > > mkdir $GS_HOME/tode/sys/local/git/OrbeonPersistenceLayer > mkdir $GS_HOME/tode/sys/local/git/OrbeonPersistenceLayer/repository $GS_HOME/shared/repos as the standard location for git repositories: mkdir $GS_HOME/shared/repos/OrbeonPersistenceLayer mkdir $GS_HOME/shared/repos/OrbeonPersistenceLayer/repository > > 3. copy each of the active packages from the SS3 repo to your local git > repo: > > mc copy Orbeon_Persistence_API-BrunoBB-0.039 > http://ss3.gemtalksystems.com/ss/OrbeonPersistenceAPI > filetree://$GS_HOME/tode/sys/local/git/OrbeonPersistenceLayer/repository > > mc copy Orbeon_Persistence-BrunoBB-0.019 > http://ss3.gemtalksystems.com/ss/OrbeonPersistenceAPI > filetree://$GS_HOME/tode/sys/local/git/OrbeonPersistenceLayer/repository mc copy Orbeon_Persistence_API-BrunoBB-0.039 http://ss3.gemtalksystems.com/ss/OrbeonPersistenceAPI filetree://$GS_HOME/shared/repos/OrbeonPersistenceLayer/repository mc copy Orbeon_Persistence-BrunoBB-0.019 http://ss3.gemtalksystems.com/ss/OrbeonPersistenceAPI filetree://$GS_HOME/shared/repos/OrbeonPersistenceLayer/repository > > 4. create a BaselineOfOrbeonPersistenceLayer class: > > cls create BaselineOfOrbeonPersistenceLayer BaselineOf > BaselineOfOrbeonPersistenceLayer > cls protocol --add=BaselineOfOrbeonPersistenceLayer baseline > browse class BaselineOfOrbeonPersistenceLayer > > 5. add a baseline: method to BaselineOfOrbeonPersistenceLayer that looks > something like the following (no tODE command - sorry:): > > baseline: spec > <baseline> > spec > for: #'common' > do: [ > spec > package: 'Orbeon_Persistence'; > package: 'Orbeon_Persistence_API' with: [ spec requires: > 'Orbeon_Persistence' ]; > yourself. > spec > group: 'default' with: #('Core'); > group: 'Core' with: #('Orbeon_Persistence_API'); > yourself ]. > > 6. create a BaselineOfOrbeonPersistenceLayer package > > mc create BaselineOfOrbeonPersistenceLayer > > 7. associate the filetree repo with the new package: > > mr add > filetree://$GS_HOME/tode/sys/local/git/OrbeonPersistenceLayer/repository > BaselineOfOrbeonPersistenceLayer mr add filetree://$GS_HOME/shared/repos/OrbeonPersistenceLayer/repository BaselineOfOrbeonPersistenceLayer > > 8. save the baseline to the repo: > > mc commit BaselineOfOrbeonPersistenceLayer `initial baseline and > packages` > > 9. Create the project entry: > > project entry --baseline=OrbeonPersistenceLayer > --repo=filetree://$GS_HOME/tode/sys/local/git/OrbeonPersistenceLayer/repository > /sys/stone/projects project entry --baseline=OrbeonPersistenceLayer --repo=filetree://$GS_HOME/shared/repos/OrbeonPersistenceLayer/repository /sys/stone/projects > > 10. Load the project (testing your baseline): > > project load OrbeonPersistenceLayer > > 11. Write the new baseline to the filetree repository and do a git commit: > > project commit --git --message=`initial commit for project packages > and baseline` OrbeonPersistenceLayer > project list > > 12. Hook up your local git repo to your github repo something like the > following (follow github instructions to get it exactly right): > > git remote add origin > [hidden email]:brunobuzzi/OrbeonPersistenceLayer.git > git push origin master a copy of the script. If you install the script in $GS_HOME/sys/local/gsdevkit_bin it will be called whenever you execute `$GS_HOME/bin/updateGsDevKit -s` ... I've found this particularly convenient if I have multiple GsDevKit_home installations (work computer and home laptop) that I want to keep up-to-date ... It also makes more sense when you get to the point where you have multiple projects like Seaside and your own project so that you can update the git repos using a script instead of manually ... > > > ... and I think that's it... Let me know how things work for you. I've > create a gist on github[4] with all of the tode comands extracted out > (source code is in middle) for easy copy/paste. > > Dale > > [1] https://github.com/dalehenrich/tode/issues/18 > [2] > https://github.com/dalehenrich/metacello-work/blob/master/docs/GettingStartedWithGitHub.md#create-baseline > [3] > https://github.com/dalehenrich/metacello-work/blob/master/docs/GettingStartedWithGitHub.md > [4] https://gist.github.com/dalehenrich/001ab961bd599b3efac1 > _______________________________________________ > > We have an open issue for GsDevKit_home[1] that I will add this email trail to ... [1] https://github.com/GsDevKit/GsDevKit_home/issues/91 [2] https://gist.github.com/dalehenrich/001ab961bd599b3efac1 _______________________________________________ Glass mailing list [hidden email] http://lists.gemtalksystems.com/mailman/listinfo/glass cloneUpdate (1K) Download Attachment |
I just noticed a mistake (the gist has been updated with the correction) ...
project entry --baseline=OrbeonPersistenceLayer --repo=filetree://$GS_HOME/shared/repos/OrbeonPersistenceLayer/repository /sys/stone/projects should be project entry --baseline=OrbeonPersistenceLayer --repo=filetree://$GS_HOME/shared/repos/OrbeonPersistenceLayer/repository /sys/local/server/projects Using /sys/local/server/projects means that the project entry is shared by all stones ... and `project load OrbeonPersistenceLayer` can be used to load Orbeon into new stones ... Use /sys/stone/projects if you want the project entry to be "private" to the stone -- I do this if I am doing "dangerous experiments" with a project and want to isolate the changes I'm saving in the git repository to just one stone ... when I'm finished with the experiments, I update the shared repository and remove the stone-specific project entry ... Dale On 07/11/2016 11:25 AM, Dale Henrichs wrote: > Hello Bruno, > > There are some adjustments to the process ... in-lined below > > On 07/11/2016 09:14 AM, BrunoBB via Glass wrote: >> Dale, >> >> About a year ago we had a conversation on github migration. Now i have a >> stable version of my application i want to migrate the code to github. >> >> Back then the step were these: (are these steps still correct to >> migrate to >> github ?) >> (the step 2. is refering to the gemstone host or the windows tode >> client ? >> in which machine perform the file copy and git init?) >> >> 1. create GitHub project (done: >> https://github.com/brunobuzzi/OrbeonPersistenceLayer) >> 2. create a local git repository (using `git init` in an empty directory >> called >> OrbeonPersistenceLayer). In the dev branch of GsDevKitHome, the >> place to put shared >> git repositories is $GS_HOME/tode/sys/local/git (using bash): >> >> mkdir $GS_HOME/tode/sys/local/git/OrbeonPersistenceLayer >> mkdir >> $GS_HOME/tode/sys/local/git/OrbeonPersistenceLayer/repository > This has changed - in fact I think the previous discussion was > probably based upon gsDevKitHome. For GsDevKit_home, I've settled on > $GS_HOME/shared/repos as the standard location for git repositories: > > mkdir $GS_HOME/shared/repos/OrbeonPersistenceLayer > mkdir $GS_HOME/shared/repos/OrbeonPersistenceLayer/repository > >> >> 3. copy each of the active packages from the SS3 repo to your local git >> repo: >> >> mc copy Orbeon_Persistence_API-BrunoBB-0.039 >> http://ss3.gemtalksystems.com/ss/OrbeonPersistenceAPI >> filetree://$GS_HOME/tode/sys/local/git/OrbeonPersistenceLayer/repository >> >> mc copy Orbeon_Persistence-BrunoBB-0.019 >> http://ss3.gemtalksystems.com/ss/OrbeonPersistenceAPI >> filetree://$GS_HOME/tode/sys/local/git/OrbeonPersistenceLayer/repository > So the filetree path will change here as well: > > mc copy Orbeon_Persistence_API-BrunoBB-0.039 > http://ss3.gemtalksystems.com/ss/OrbeonPersistenceAPI > filetree://$GS_HOME/shared/repos/OrbeonPersistenceLayer/repository > > mc copy Orbeon_Persistence-BrunoBB-0.019 > http://ss3.gemtalksystems.com/ss/OrbeonPersistenceAPI > filetree://$GS_HOME/shared/repos/OrbeonPersistenceLayer/repository > > >> >> 4. create a BaselineOfOrbeonPersistenceLayer class: >> >> cls create BaselineOfOrbeonPersistenceLayer BaselineOf >> BaselineOfOrbeonPersistenceLayer >> cls protocol --add=BaselineOfOrbeonPersistenceLayer baseline >> browse class BaselineOfOrbeonPersistenceLayer >> >> 5. add a baseline: method to BaselineOfOrbeonPersistenceLayer that looks >> something like the following (no tODE command - sorry:): >> >> baseline: spec >> <baseline> >> spec >> for: #'common' >> do: [ >> spec >> package: 'Orbeon_Persistence'; >> package: 'Orbeon_Persistence_API' with: [ spec requires: >> 'Orbeon_Persistence' ]; >> yourself. >> spec >> group: 'default' with: #('Core'); >> group: 'Core' with: #('Orbeon_Persistence_API'); >> yourself ]. >> >> 6. create a BaselineOfOrbeonPersistenceLayer package >> >> mc create BaselineOfOrbeonPersistenceLayer >> >> 7. associate the filetree repo with the new package: >> >> mr add >> filetree://$GS_HOME/tode/sys/local/git/OrbeonPersistenceLayer/repository >> BaselineOfOrbeonPersistenceLayer > path change here, again: > > mr add > filetree://$GS_HOME/shared/repos/OrbeonPersistenceLayer/repository > BaselineOfOrbeonPersistenceLayer > > >> >> 8. save the baseline to the repo: >> >> mc commit BaselineOfOrbeonPersistenceLayer `initial baseline and >> packages` >> >> 9. Create the project entry: >> >> project entry --baseline=OrbeonPersistenceLayer >> --repo=filetree://$GS_HOME/tode/sys/local/git/OrbeonPersistenceLayer/repository >> >> /sys/stone/projects > path again: > > project entry --baseline=OrbeonPersistenceLayer > --repo=filetree://$GS_HOME/shared/repos/OrbeonPersistenceLayer/repository > /sys/stone/projects > > >> >> 10. Load the project (testing your baseline): >> >> project load OrbeonPersistenceLayer >> >> 11. Write the new baseline to the filetree repository and do a git >> commit: >> >> project commit --git --message=`initial commit for project >> packages >> and baseline` OrbeonPersistenceLayer >> project list >> >> 12. Hook up your local git repo to your github repo something like the >> following (follow github instructions to get it exactly right): >> >> git remote add origin >> [hidden email]:brunobuzzi/OrbeonPersistenceLayer.git >> git push origin master > For GsDevKit_home I would an additional optional step where you would > add a $GS_HOME/sys/local/gsdevkit_bin/cloneUpdate script. I've > attached a copy of the script. > > If you install the script in $GS_HOME/sys/local/gsdevkit_bin it will > be called whenever you execute `$GS_HOME/bin/updateGsDevKit -s` ... > I've found this particularly convenient if I have multiple > GsDevKit_home installations (work computer and home laptop) that I > want to keep up-to-date ... It also makes more sense when you get to > the point where you have multiple projects like Seaside and your own > project so that you can update the git repos using a script instead of > manually ... >> >> >> ... and I think that's it... Let me know how things work for you. I've >> create a gist on github[4] with all of the tode comands extracted out >> (source code is in middle) for easy copy/paste. >> >> Dale >> >> [1] https://github.com/dalehenrich/tode/issues/18 >> [2] >> https://github.com/dalehenrich/metacello-work/blob/master/docs/GettingStartedWithGitHub.md#create-baseline >> >> [3] >> https://github.com/dalehenrich/metacello-work/blob/master/docs/GettingStartedWithGitHub.md >> >> [4] https://gist.github.com/dalehenrich/001ab961bd599b3efac1 >> _______________________________________________ >> >> > and I think that should be it ... let me know if you have problems .. > I've updated the gist[2] with the changed paths > > We have an open issue for GsDevKit_home[1] that I will add this email > trail to ... > > [1] https://github.com/GsDevKit/GsDevKit_home/issues/91 > [2] https://gist.github.com/dalehenrich/001ab961bd599b3efac1 _______________________________________________ Glass mailing list [hidden email] http://lists.gemtalksystems.com/mailman/listinfo/glass |
Dale,
Thanks for the detailed answer. I was able to upload one of my projects to github (pretty cool !!!). For now i will be doing some experiment maybe i come back with some question. It is a very good work what you have made !!! :) Regards, Bruno |
Thanks!
I'm glad that you are able to get started with GitHub! Dale On 07/12/2016 09:13 AM, BrunoBB via Glass wrote: > Dale, > > Thanks for the detailed answer. > > I was able to upload one of my projects to github (pretty cool !!!). > > For now i will be doing some experiment maybe i come back with some > question. > > It is a very good work what you have made !!! :) > > Regards, > Bruno > > > > -- > View this message in context: http://forum.world.st/Migrating-to-github-2-tp4906038p4906313.html > Sent from the GLASS mailing list archive at Nabble.com. > _______________________________________________ > Glass mailing list > [hidden email] > http://lists.gemtalksystems.com/mailman/listinfo/glass _______________________________________________ Glass mailing list [hidden email] http://lists.gemtalksystems.com/mailman/listinfo/glass |
Free forum by Nabble | Edit this page |