Я только что столкнулся с похожими проблемами во время выполнения.Меня интересует визуализация только самого последнего цикла разработки для крупного проекта моей компании, который состоял примерно из 10000 списков изменений Perforce.
Глядя на convert_logs.py
, я увидел, что он напрямую звонил на p4 -G changelists
, что привело бы к значительным потерям всей истории изменений.p4 changes
принимает аргумент -m
, чтобы ограничить количество возвращаемых списков изменений.Поэтому я просто отредактировал строку 347 файла convert_logs.py с
changelists = run_marshal('p4 -G changelists "' + opts.perforce_path + '"')
до
changelists = run_marshal('p4 -G changes -m 10000 "' + opts.perforce_path + '"')
Это очень помогло сократить время выполнения.
Если кто-то чувствует себя честолюбивым,Я бы предложил рефакторинг convert_logs, включив в него что-то вроде --perforce-args
, где можно указать этот и любые другие параметры.