lazygit_add_conventional_commit.py 795 B

123456789101112131415161718192021
  1. #!/usr/bin/env python3
  2. from logging import NOTSET, basicConfig, debug
  3. from subprocess import check_output
  4. from sys import argv
  5. if __name__ == "__main__":
  6. basicConfig(level=NOTSET)
  7. debug(f"Called with parameters {argv}")
  8. _, form_type, form_scope, form_breaking, form_subject, form_breaking = tuple(argv)
  9. is_breaking = False if form_breaking.lower() == "no" else True
  10. message = form_type
  11. message += (
  12. "(" + form_scope.lower().replace(" ", "-") + ")"
  13. if len(form_subject) > 0
  14. else ""
  15. )
  16. message += "!" if is_breaking else ""
  17. message += ": " + form_subject
  18. if is_breaking and form_breaking.lower() != "yes":
  19. message += "\n\nBREAKING CHANGE: " + form_breaking
  20. check_output(["git", "commit", "--allow-empty", "-m", message])