def generate_changelog(self):
"""Use the git log to create a changelog with all changes since the previous tag"""
try:
previous_name = self.repo.git.describe("{}^".format(self.current_tag), abbrev=0)
previous_tag = self.repo.rev_parse(previous_name)
except GitCommandError:
previous_tag = THE_NULL_COMMIT
current = self._resolve_tag(self.current_tag)
previous = self._resolve_tag(previous_tag)
commit_range = "{}..{}".format(previous, current)
return [(self._shorten(commit.hexsha), commit.summary) for commit in self.repo.iter_commits(commit_range)
if len(commit.parents) <= 1]
评论列表
文章目录