Subversion, and moving mousepad in?
Jasper Huijsmans
jasper at xfce.org
Thu Mar 3 21:50:55 CET 2005
Brian J. Tarricone wrote:
> Ok, this complicates things.
>
> Auke Kok wrote:
>
>> technical comments coming up, please read carefully as they will
>> influence the future layout:
>>
>> options available:
>>
>> 1. make one huge svn archive
>>
>> ( a. everything under its own tree
>> b. some things under a separate tree (core, plugins?) )
>>
>> - pro: you can move everything everywhere
>> - con: access control is hard: requires subversions pre-hook hack to
>> separate people in groups, then assigning them writeable space
>>
>> 2. make one svn repo per tree (module) (either grouping core or not)
>>
>> - com: moving is hard: you're physically moving between different
>> repos (although as far as I understand it's possible without problems).
>> - pro: fine-grained access is easy (same way we do cvs perms at the
>> moment)
>>
>> 3. use http auth / webdav method
>>
>> - pro: huge fine-grained control possible
>> - con: large overhead on permission administration
>> - con: security (not using ssh)
>
>
> I'm not a big fan of #1 if it means that fine-grained permissions will
> be hard. I think #2 makes good sense - we rarely need to move files
> between modules. After we figure out exactly what will go where, there
> probably won't be much of a need to do this. #3 seems to really suck on
> the security front. Is there no security at all? WebDAV works over
> SSL, right?
>
> I think we're looking at this the wrong way. We need to come up with a
> list of requirements, and then figure out which setup best fits those
> requirements. Here's my first stab at such a list:
>
> * Flexible permissions. We want to give translators access to (ideally)
> just their own .po files. In the common case, this will mean
> restricting each translator to one file per module.
> * Xfce devs should have commit access to all of the Xfce core component
> modules, but not other projects (xfmedia, mousepad, non-core panel
> plugins). It would be nice if non-core maintainers could easily give
> commit access to others (that is, other people who already have commit
> access to other parts of the repo), but this isn't a necessity.
> * Ability to group components. It would be useful to be able to
> designate certain modules (e.g., libxfcegui4, xfwm4, xfce4-panel, etc.)
> as "core Xfce components", and be able to check out/update based on
> that. Basically I want an equivalent to "cvs co xfce4" which grabs the
> core without getting, e.g. xfmedia.
> * Ability to branch/tag some modules without touching the others.
> Related to this, the ability to tag/branch a series of modules (e.g.,
> Xfce core) without having to issue a dozen commands and do each one
> individually.
> * Easy file renames/moves within modules.
> * CVS-like operation. If we can't do everything with svn that we
> already do with CVS, what's the point?
>
> So, unless I'm mistaken, the WebDAV solution is looking even more
> attractive. Personally, I wouldn't mind spending a few hours setting up
> all the permissions, as long as the big time committment is just the
> up-front cost of initial setup, with later admin time being just to add
> or remove people from specific components/files later as the need
> arises. But perhaps I'm missing something, and you can do all these
> things without WebDAV.
>
Being able to do grouping is important to me too. That would be much
harder with separate repos, wouldn't it?
Brians list looks fairly complete, I can't really think of anything to
add there.
I certainly don't want to impose a big administration burden on Auke.
Jasper
More information about the Xfce4-dev
mailing list