Stacked branching question

Nicholas Allen allen at
Mon Jul 21 11:07:15 BST 2008

Hash: SHA1

| It may not be required for all operations, but there's no guarantee
| you'll be able to do anything without it.  At present when you branch
| with --stacked the new branch has no history in it at all.  When you
| go to commit, we'll want to look at previous file texts to do delta
| compression and at the moment that will "unthinkingly" go to the
| backing repository.
| I would like in the future to have a mode of operation where it either
| initially fills the local repository with at least a full copy of the
| previous revision, or can do the commit knowing that the previous
| copies are there and therefore not storing deltas.  But we don't have
| that in this release.
I always thought the idea of a global cache of revisions would make 
sense. That way you don't always have to create a shared repository in 
order to optimize download of revisions when branching. I would imagine 
this should be fairly trivial to implement and would then benefit all 
branching operations to make them more off-line friendly. This would 
mean that if you performed a status at least once on the stacked branch 
it would likely have the revisions in the cache and so would not need to 
access the source branch. Whenever a revision is retrieved from a remote 
source it would be put in a cache directory (say ~/.bazaar/cache). Next 
time the revision is needed it would first look in the cache if the 
revision is on a remote machine. The user could tweak settings for the 
cache size so that it doesn't increase beyond a certain size (but they 
could also opt for an infinite cache too).

I would think that this could be done at such a low level that it would 
work in all situations and for all commands. Or have I overlooked something?


Version: GnuPG v1.4.7 (MingW32)
Comment: Using GnuPG with Mozilla -

More information about the bazaar mailing list