[Tinyos-devel] [nescc-devel] nesC 1.3.0 beta3

Philip Levis pal at cs.stanford.edu
Tue Jun 24 18:25:19 PDT 2008


On Jun 23, 2008, at 3:15 PM, Vlado Handziski wrote:

> I think it is high time that we drop SF. We can either move to git  
> or svn. We can host a public repo on Google or github or whatever.  
> And this being an open source project, with a very limited set of  
> people that commit to the repository, we can live perfectly well  
> without the fine grained per folder access controls. The peer  
> pressure to keep the HEAD or trunk or whatever in working state is  
> more than enough.


Access permissions come from 1.x, and when contrib was a subdirectory.  
Even now, as a separate module, write access to 2.x contrib provides  
write access to the entire tree. Without per-directory permissions,  
this means any and all contrib parties can write to tos/. I'd agree  
that a limited number of people commit to tos/, tools/, and support/.  
Contrib is a wholly different story.

The motivation for this limitation is maintenance. There are certain  
configuration variables and files which users often change in their  
local installations. E.g., the default frequency for mica2, the AM  
group, the 15.4 channel. By giving any and all contrib parties write  
access to the main tree, this in some ways raises the bar of the  
degree of care they have to apply when committing, and also means that  
the people maintaining the core need to be more vigilant about  
watching commits. The commit that removed the LPL warnings is a recent  
example. There were many cases in 1.0/1.1 where developers (contrib  
and otherwise) accidentally checked in changes which broke other  
people's code and led to days of debugging to find the source.  
Avoiding that kind of hair-pulling is good.

As far as I see it, svn has two major advantages over CVS, neither of  
which seem to be a big issue that we find painful:

1) Atomic commits
2) Can move directories

It also makes branching a little easier. Git has these benefits, plus  
the ability to maintain a local repository.

Which of these is a pressing problem whose cost outweighs the  
maintenance benefit of access permissions?

Phil


More information about the Tinyos-devel mailing list