base commit generator logic  (issue #81)