atom feed10 messages in com.selenic.mercurial-develA thought on subrepos
FromSent OnAttachments
Matt MackallApr 14, 2011 1:00 pm 
Patrick MézardApr 14, 2011 1:40 pm 
Matt MackallApr 14, 2011 2:06 pm 
Bryan O'SullivanApr 14, 2011 2:13 pm 
Matt MackallApr 14, 2011 3:54 pm 
Johannes TotzApr 14, 2011 6:03 pm 
Benoît AllardApr 15, 2011 7:31 am 
Greg WardApr 17, 2011 4:19 pm 
Benoît AllardApr 18, 2011 2:46 am 
Steve LoshApr 19, 2011 7:38 pm 
Subject:A thought on subrepos
From:Matt Mackall (mp@selenic.com)
Date:Apr 14, 2011 1:00:01 pm
List:com.selenic.mercurial-devel

It seems many projects with subrepos are structured like:

app/ <- main repo lib/ <- a subrepo

This is perhaps the most obvious way to do things, but is not really ideal. A better way is:

build/ <- main repo app/ <- subrepo lib/ <- subrepo

For starters, this does away with most of the "I didn't mean to recursively commit" issues as commits at the top-level will be much less common.

This also greatly lowers the degree of dependence between app/ and lib/, but still gives you the ability to commit and tag coherent combinations of app and lib.

A general statement of this approach is: "if a repo contains real code, it shouldn't contain subrepos."