Hi Guys,

Nothing is set in stone, if the two repository approach does not work,
we can still merge them without any loss of information. Also, you can
set up your git to track BOTH repositories in the same working tree
(and cherry-pick commits to backport fixes).

Miklos

On Sun, Feb 3, 2013 at 12:07 AM, Eric Decker <[email protected]> wrote:
>
>
> On Sat, Feb 2, 2013 at 7:34 PM, Christopher Wilson
> <[email protected]> wrote:
>>
>> Why does the TinyOS organization on Github use two separate repositories
>> for dev and release?
>
>
> Good question.  I'll answer it since I'm the culprit who set up the dual
> repository structure.   There wasn't really a lot of discussion.
>
>>
>> (tinyos-main and tinyos-release)  Is there a reason why there isn't just a
>> single repository that uses branches and tags to record releases (instead of
>> splitting them into a separate repo)?
>
>
> I've been running and watching how repositories on github work via the
> gh:tinyprod/prod and gh:tp-freeforall/prod repositories.   These have been
> tracking and will continue to track the tinyos development mainline.
> tp-freeforall is essentially a development repository and one of the things
> I noticed is it is very confusing for casual or new users of a repository
> when it contains all of the information that multiple branches and
> develoment threads are included.   Certainly some of these feed into the
> release mainline but most do not and feed into a future release.
>
> So one of the reasons for a release repository is to keep the branching
> structure releated to only the release explicitly.  This minimizes what
> folks have to sort through when looking at the data stored in the
> repository.
>
> Another associated reason is by limiting what is present in the release
> repository it reduces the amount of data that must be downloaded when the
> repository is remoted.
>
> Github has a mechanism for specifing the default branch for a repository.
> The default branch on tinyos/tinyos-main (the development repository) is
> master while the default branch on tinyos/tinyos-release is tinyos-2_1_2
> (the current release branch).   So when a new user clones tinyos-release
> they will always get the current release.   We are planning on doing
> interium releases (more often then once every two years).
>
> If we kept everything together, we'd have to tell people what to explicitly
> get and they would have to understand more about git.
>
> Further the SHAs on tinyos-release track with the same SHAs in tinyos-main.
> Effectively it is the same as if we'd run a release branch in tinyos-main
> but with the advantages listed above.   It just has to be managed and I'm
> paying attention to that.
>
>
>> Is there a discussion available somewhere in the mailer archives that
>> discusses the thinking behind the way the way the TinyOS github org was
>> structured (2 repos instead of 1)?
>>
>> Thanks,
>> Chris
>
>
>
>
> --
> Eric B. Decker
> Senior (over 50 :-) Researcher
>
>
> _______________________________________________
> Tinyos-help mailing list
> [email protected]
> https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
_______________________________________________
Tinyos-help mailing list
[email protected]
https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help

Reply via email to