Merge #714: add commit cache (feature #622)