git repository layout

Brian J. Tarricone bjt23 at cornell.edu
Sat May 16 22:28:14 CEST 2009


Hey all,

So I feel like I'm mentally doing a 180 here.

Originally I was very much in favor of dispensing with the separate xfce 
and goodies repositories, and having a big flat namespace in the new git 
repo with everything in the root.

My semi-OCD need for organisation in stuff like this is cringing, though.

Nick mentioned fd.o's organisational structure (see 
http://cgit.freedesktop.org/), and I kinda like that sort of idea.

I've also been looking this while coming up with replacements for our 
existing svn-based infrastructure.  Things like:

1.  The svn commit permissions config file is separated into xfce and 
goodies.  This is nice from a management perspective because the goodies 
all have similar permissions models, which is different from the xfce repo.

2.  The xdt-i18n script allows translators to separately check out the 
xfce repo and goodies repo.  If we merge everything into one big repo, 
there won't be the option to limit this (unless we again arbitrarily 
partition everything), and the number of modules might be intimidating 
to new translators.  And also -- this might be a bit of a controversial 
thing to say, but -- having the core Xfce desktop checked out by 
xdt-i18n as 'xfce' implicitly encourages new translators that that's the 
place to start, and I like that.  I think it's more important that (for 
example) xfwm4 is fully translated than it is for some random panel 
plugin.  This might sound a bit "mean" to the goodies developers but... 
well, that's what I think.  Take it as you will.

3.  Xfce core components normally have Xfce 4.[0246] branches.  Goodies 
don't.  That's at least a repo management distinction, and that, as much 
as an 'xfce/' prefix in the module name, also makes a distinction as to 
where the module is.

I could probably come up with more points, but... I won't, because I'm 
hungry and my friends are waiting on me for lunch.

Basically, looking at this from the infrastructure perspective, I'm 
seeing more useful reasons for having separate repositories.  And 
really, with git they wouldn't even have the "separate repo" technical 
distinction that they do with svn.  All git modules/repos are separate 
repos anyway.  Having prefixes on them is just a matter of directory 
structure on the server.  They'll all have the same repo structure, and 
in this case I'd actually probably argue that we get rid of 
goodies-commits and funnel all commits from git into the same 
xfce-commits list (though I'm not totally set on this).

So, what do people think?  I know this is kinda a long email, and many 
of you may not care, so I'll consider no reply as a response of, "Brian, 
do whatever you want." ^_~

	-brian



More information about the Xfce4-dev mailing list