Hi All,

As you all know that we are designing the new repo structure to
accommodate 3.0 as well.
So here is a brief description of what we have concluded till now.

Repos Structure:
 - For 3.0
    - erp/devel/pi
    - erp/devel/main
    - erp/devel/try
    - erp/devel/api-checks

 - For 2.50
    - erp/stable/2.50
    - erp/stable/try-2.50
    - erp/stable/api-checks-2.50
    - erp/stable/dbsm-2.50

 - The twist (common for both)
    - erp/mods
    - erp/pmods

* The modules will remain in the same path where they are right now.
* The modules which need different changes or version numbers for 2.50
and 3.0 will have a named branch in the same repo. Which would mean:
    - Named branch is like having names for the heads in one
repository (I think we all are familiar with heads).
    - This gives an ease in cloning, as we don't have to clone two
different repositories for the same module.
    - So to change from one repo to another will be one command away
(hg up <branch name>).

* And for special cases where modules pass from public to private or
vice versa a real clone will be present in mods and pmods.
    - Example: erp/pmods/module (for 2.50) same is public for 3.0.
Then can be handled like this erp/pmods/module (for 2.50) and
erp/mods/module-<moduleMajorVersion> (for 3.0)

To explain the Named Branch scenario we have created a example repo[1][2].
Please feel free to clone this repository if you wish to have hands on
experience of the same.
These commands will help you:
 - hg clone repo[1]                          (this will give you clone
with existing heads)
 - hg clone -r 2.50 repo[1]               (this will give you clone
with only 1 branch 2.50 in this case)
 - hg pull -u                                      (this will get you
all the changes but you will remain in your working branch)
 - hg up default                                (this will take you to
the default branch which will be the latest Major version, 3.0 in our
case)
 - hg up 2.50                                    (this will take to
the 2.50 branch)

For those who want to understand more about Named Branches please read this[3].
We are also planning to have webinar and other sessions to help
developers understand and get comfortable with this Branching
structure.


Please feel free to give us your comments and feedback on this new
repository structure.



[1]https://code.openbravo.com/erp/mods/org.openbravo.example
[2]https://code.openbravo.com/erp/mods/org.openbravo.example/graph
[3]http://stevelosh.com/blog/2009/08/a-guide-to-branching-in-mercurial/#branching-with-named-branches

-- 
-Harpreet
http://linuxgazettes.blogspot.com
http://picasaweb.google.com/harpreetsingh.wadhwa

------------------------------------------------------------------------------
Nokia and AT&T present the 2010 Calling All Innovators-North America contest
Create new apps & games for the Nokia N8 for consumers in  U.S. and Canada
$10 million total in prizes - $4M cash, 500 devices, nearly $6M in marketing
Develop with Nokia Qt SDK, Web Runtime, or Java and Publish to Ovi Store 
http://p.sf.net/sfu/nokia-dev2dev
_______________________________________________
Openbravo-development mailing list
Openbravo-development@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/openbravo-development

Reply via email to