Re: [ros-users] Developers workflow in ROS repositories

Top Page
Attachments:
Message as email
+ (text/plain)
+ signature.asc (application/pgp-signature)
Delete this message
Reply to this message
Author: User discussions
Date:  
To: ros-users
Subject: Re: [ros-users] Developers workflow in ROS repositories
Hi Jeremiah:

On 08/30/2011 07:03 PM, Jeremiah Via wrote:
>>>
>>> Normally, related packages are packed together into stacks. When
>>> a release is done, the stack's version number is increased and
>>> the current dev-branch (trunk in most cases) is tagged. For
>>> instance, when the new version 1.3 of stack foo is released, the
>>> tag tags/foo-1.3 is created. In addition, a branchs named
>>> according to the ros distro names the release is done against is
>>> created, e.g. branches/diamondback.
>>>
>>
>> Thanks for the info Lorenz, never heard about that release scripts
>> before. are there many institution repositories working this way?
>>
>> The model sounds quite reasonable but we have seen an inconvenience
>> to manage developing this way:
>>
>> Every time you make a tag (or a branch) subversion is going to copy
>> the code in the corresponding directories (branches/ tags/) inside
>> the repo. This means you will have a repo with duplicates
>> directories for packages in branches/ trunk/ and tags, right?
>>
>> Seeing the way rospack finds packages (mostly leaving the
>> filesystem to decide the order to loop subdirs contained in entries
>> of ROS_PACKAGE_PATH) if you make something like a roscd, it could
>> make you to land on branches/ or tags/ instead of desired trunk.
>
> You do not normally check out the entire repository. Instead, you
> check out trunk and use the switch command as necessary:
>
> http://svnbook.red-bean.com/en/1.0/re27.html
>
> Similarly, when you tag a release, it exists on the repository but
> not your machine, so you won't run into this problem.
>


Yup, partial SVN checkouts can drive to a model without this problem.

The point is that currently we have plenty of interdependencies inside
the stacks/packages from our own repo so this can lead to has several
partial checkouts (as many as stack dependencies you need) although you
only develop in one of the stacks.

Thanks.

--
José Luis Rivero <>
Institut de Robòtica i Informàtica Industrial [CSIC-UPC]
Phone: 93.4015783