Sandbox, trunk and commit

This forum is only for questions or discussions about working with the mojoPortal source code in Visual Studio, obtaining the source code from the repository, developing custom features, etc. If your question is not along these lines this is not the right forum. Please try to post your question in the appropriate forum.

Please do not post questions about design, CSS, or skinning here. Use the Help With Skins Forum for those questions.

This forum is for discussing mojoPortal development

This forum is only for questions or discussions about working with the mojoPortal source code in Visual Studio, obtaining the source code from the repository, developing custom features, etc. If your question is not along these lines this is not the right forum. Please try to post your question in the appropriate forum.

You can monitor commits to the repository from this page. We also recommend developers to subscribe to email notifications in the developer forum as occasionally important things are announced.

Before posting questions here you might want to review the developer documentation.

Do not post questions about design, CSS, or skinning here. Use the Help With Skins Forum for those questions.
This thread is closed to new posts. You must sign in to post in the forums.
8/29/2007 1:15:01 PM
Gravatar
Total Posts 68

Sandbox, trunk and commit

Hi Joe!

I would like to commit some changes I've done. I'm not entirely sure how to do this. I have checked out my sandbox. Now I have some questions:

How do I update/merge sandbox to trunk in a good way?

How do I add database schema/sp changes? (for webstore)

How do I (or you) merge this to trunk later?

 

Thanks,

Christian

8/29/2007 1:52:00 PM
Gravatar
Total Posts 18439

Re: Sandbox, trunk and commit

Hi Christian,

Feel free to commit to your sandbox whenever you like without checking with me. Just right click the topmost folder and choose SVN Commit (still always best to do svn update before committing).

Probably best for now just to let me handle merging to trunk since I am also working from a sandbox and may possibly have conflicting changes between us. But you will need to learn to do merging because there will be a need to merge trunk to your sandbox to get my changes.

The basic steps when merging from one branch to another I will explain in the context of what I do to merge my changes from my sandbox to trunk.

First I have a local copy of trunk checked out in a different folder than my sandbox.

I do svn update on this copy of trunk to make sure it is up to the latest revision.

Then to merge I right click the topmost folder of my local trunk and choose TortoiseSVN > merge which brings up a dialog.

Its important to check Head Revision at the top then ucheck the checkbox that says "Use From:"..

Note that in this example I am merging from trunk to my sandbox which may seem counter intuitive but what it does is make my local copy of trunk the same as my sandbox. This can take about an hour. Once its done I simply commit trunk and now it is the same as my sandbox. Its all very simple with very few committers but we will need to be in communication to avoid problems. When you are ready to move your changes into trunk let me know what folders have changes as it is possible to merge folders at a time instead of the whole branch like in the example above. Sometimes after a merge there can be merge conflicts which must be resolved in the local copy before it can be committed. In the beginning I will probably merge folder from your sandbox into mine and then merge my changes and yours together into trunk. After which you would want to merge your sandbox (from your sandbox to trunk) which would update your local copy of your sandbox to be the same as trunk then you commit and your sandbox in the repository will match trunk.

Webstore needs to be setup similar to what I did in your Poll feature so it copies an application folder beneath the web/Setup/applications containing versioned setup/upgrade scripts. Then when you need to run a script to update the schema or add/modify procs you just add a new version script in SchemUpgeadScripts/dbname folder for your app and then visit the setup/Default.aspx page and it will run the script for you.

I've been intending to do that myself but might be a good thing for you to do to get a better understanding of the setup/upgrade system.

Joe

9/25/2007 2:09:42 PM
Gravatar
Total Posts 68

Re: Sandbox, trunk and commit

Hi Joe,

could you make a screenshot that shows how to merge latest trunk changes to sandbox? I have some problems with this, when "from" is set to trunk and "to" is set to sandbox, then the updates from trunk don't get trough (as it suppose to be, I guess).

When "from" is set to sandbox and "to" is set to trunk my changes is sandbox is gone. After this I could just revert/diff the files, is this the way to go?

Don't remember how I did the last time.

Thanks,

Christian

9/25/2007 2:22:34 PM
Gravatar
Total Posts 18439

Re: Sandbox, trunk and commit

Hi Christian,

If all your changes are just in the Poll projects and WebStore what I would do is break it up into smaller merges instead of the whole tree.

First get a clean checkout of trunk then on a folder by folder basis merge from trunk/foldername to sandboxes/cfredh/foldername

Just right click the specific folder instead of the root and choose TortosieSVN > Merge

This would update your local working copy of trunk so that it contains your changes for the folders. After going through all the folders where you have changes in your sandbox then build, make sure it works and commit to trunk.

After that you can safely merge the whole tree from trunk to your sandbox (on your local sandbox) and it will still have your changes and you will be sure to have all the other changes that are already in trunk.

If you are unsure and would like me to do it for you just let me know and confirm which folders. I'm guessing webstore folders and pollfeature folders.

The only place where you might encounter a merge conflict is that I know at one point I updated the pollmodule control with the new corner rounders. If you get a conflict just right click to resolve conflicts and let your file win the conflict then look at how the corner rounder has been changed to 2 separate (upper and lower controls) in the other modules and do the same thing. Maybe you won't get a conflict but mentioning that in case you do.

Thanks,

Joe

You must sign in to post in the forums. This thread is closed to new posts.