19 lines
639 B
Python
19 lines
639 B
Python
from commitizen import BaseCommitizen
|
|
from commitizen.config import BaseConfig
|
|
from commitizen.cz import registry
|
|
from commitizen.exceptions import NoCommitizenFoundException
|
|
|
|
|
|
def commiter_factory(config: BaseConfig) -> BaseCommitizen:
|
|
"""Return the correct commitizen existing in the registry."""
|
|
name: str = config.settings["name"]
|
|
try:
|
|
_cz = registry[name](config)
|
|
except KeyError:
|
|
msg_error = (
|
|
"The committer has not been found in the system.\n\n"
|
|
f"Try running 'pip install {name}'\n"
|
|
)
|
|
raise NoCommitizenFoundException(msg_error)
|
|
else:
|
|
return _cz
|