ObjectCache doesn't really belong here, but moving it out of HgRevlogBasedStorage will either require a similar static class to hold an IObjectCache instance or passing this instance around, starting all the way from HgRepository . Neither is good, so just leave it here for now.