Обновить git_analyzer.py

This commit is contained in:
2026-05-26 20:51:56 +03:00
parent cbe0bd2c72
commit bb429c38c6

View File

@@ -317,9 +317,6 @@ def read_file_at_ref(repo_dir, ref, path):
def get_branch_commits(repo_dir, branch_ref):
"""Коммиты конкретной ветки от старых к новым, с timestamp.
Это нужно, чтобы на старой версии не показывать ветку, которой тогда ещё не было.
"""
fmt = "%H%x1f%h%x1f%an%x1f%ad%x1f%at%x1f%s"
try:
out = run_git(["log", branch_ref, "--reverse", "--date=iso", f"--pretty=format:{fmt}"], cwd=repo_dir)
@@ -341,10 +338,6 @@ def get_branch_commits(repo_dir, branch_ref):
def branch_first_unique_timestamp(repo_dir, branch_ref, default_ref):
"""Когда ветка реально стала отдельной.
Git не хранит дату создания ветки, поэтому берём первый коммит ветки,
которого нет в основной ветке. Если таких нет — ветка считается старой.
"""
if branch_ref == default_ref:
return None
result = run_git_allow_fail(["log", "--reverse", "--format=%at", f"{default_ref}..{branch_ref}"], cwd=repo_dir)
@@ -534,13 +527,6 @@ def format_analysis(data):
class GitAnalyzer:
"""Главный класс анализа Git-репозиториев.
В старых версиях проекта логика была набором функций.
В OOP-версии интерфейс создаёт объект GitAnalyzer и вызывает его методы.
Так проще строить диаграмму классов и объяснять систему как набор объектов.
"""
def __init__(self):
self.languages = LANG_EXTENSIONS
self.ignore_dirs = IGNORE_DIRS