[ANN] Announcing new extension for alternative subrepo functionality.

Tom Anderson tom.anderson at timgroup.com
Thu Aug 9 10:25:12 UTC 2012


On 08/08/12 16:59, paul_nathan at selinc.com wrote:
> I am exceptionally pleased to present Guestrepos, an extension for 
> handling components for large products.

Very, very nice! Time will tell how well it works for the cases where 
subrepos doesn't work so well, but it certainly looks like it should do, 
and it sounds like your experience is positive so far. I followed the 
discussion of this idea on this list back when it happened, and this is 
exactly what i was hoping would come out of it. In fact, i was thinking 
about it again a couple of days ago on my cycle to work, and this is 
almost exactly what i was imagining. My hat is off to you for actually 
doing it rather than just idly thinking about it!

The only thing i might change would be to change freezing to separate 
the record of the frozen guest states from the definitions that led to 
them. That is, rather than a freeze rewriting the .hgguestrepo file, it 
would generate a .hgguestrepofrozen file or something, which could be 
checked in separately. You could then have a flag to grsync to make it 
use the frozen states from .hgguestrepofrozen, rather than re-deriving 
from .hgguestrepo. My motivation for that is that where i work, we don't 
have the kind of long release cycles that would involve a formal freeze, 
but it would be really useful to capture exact versions on *every* 
commit, so that the continuous integration server could build with 
exactly the same versions that the last developer to check in built 
with. Happily, that's trivial to implement on top of your current 
operations:

[alias]
grice = !$HG grfreeze && $HG revert $($HG root)/.hgguestrepo && mv $($HG 
root)/.hgguestrepo.orig $($HG root)/.hgguestrepofrozen

I could then perhaps have something like:

[hooks]
precommit.grice = hg grice

Does Mercurial set $HG when running hooks?

tom

-- 

Tom Anderson | Developer | +44 20 7826 4312 | timgroup.com 
<http://timgroup.com/>

STATEMENT OF CONFIDENTIALITY: The information contained in this 
electronic message and any attachments to this message are intended for 
the exclusive use of the addressee(s) and may contain confidential or 
privileged information. If you are not the intended recipient, please 
notify Tom Anderson at TIM Group at tom.anderson at timgroup.com and 
destroy all copies of this message and any attachments.

TIM Group is the trading name for YouDevise Limited. YouDevise Limited 
is registered in England, No. 3331176. Registered office: 3 Copthall 
Avenue, London, EC2R 7BH.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mercurial-scm.org/pipermail/mercurial/attachments/20120809/cc3ccf1f/attachment-0002.html>


More information about the Mercurial mailing list