-
Type:
Improvement
-
Status: Closed (View Workflow)
-
Priority:
Major
-
Resolution: Fixed
-
Component/s: git-plugin
-
Labels:None
-
Similar Issues:
Generation of change log takes significant time in case there are many commits between builds.
Per build logs, hudson issues
[workspace] $ git log --pretty=format:%H 961016ffca61b0cf4ef8cc33816b8c3496ac73b2..1074f07c642d6f9f5259c2092751a424ed6c4667
and then for every commit
[workspace] $ git log -M --summary --pretty=raw -n 1 1074f07c642d6f9f5259c2092751a424ed6c4667 [workspace] $ git diff-tree -M -r 1074f07c642d6f9f5259c2092751a424ed6c4667
In my case special job that was building minor changes that were rebased onto long history of non-related commit took 2 minutes to build, and 1h 40 minutes to compute change log for 900 commits.
Can it be improved by e.g. introducing detail-less changelog, so that single "git log" statement gives hashes/messages/authors, and hudson shows no "deatails" link (gitweb link only is enough)?
Even better than a change log with no details would be to avoid forking a process 2x per commit.
I haven't gone through all the details. Is something relying on the specific format produced by the sequence of those two commands? Would it be possible to get the same information, though perhaps in a slightly different format, via a single git log command executed over a commit range?