code: def do_commit(repo, message_template, branch_name, hexsha):
      "Do a commit if modified/untracked files"
      repo.git.add(repo.working_tree_dir)
  
      if not repo.git.diff(staged=True):
          _LOGGER.warning('No modified files in this Autorest run')
          return False
  
      checkout_and_create_branch(repo, branch_name)
      msg = message_template.format(hexsha=hexsha)
      commit = repo.index.commit(msg)
      _LOGGER.info("Commit done: %s", msg)
      return commit.hexshf do_commit(repo, message_template, branch_name, hexsha):
      "Do a commit if modified/untracked files"
      repo.git.add(repo.working_tree_dir)
  
      if not repo.git.diff(staged=True):
          _LOGGER.warning('No modified files in this Autorest run')
          return False
  
      checkout_and_create_branch(repo, branch_name)
      msg = message_template.format(hexsha=hexsha)
      commit = repo.index.commit(msg)
      _LOGGER.info("Commit done: %s", msg)
      return commit.hexsha
docs: Do a commit if modified/untracked files