Dne 31.10.2016 v 13:22 Michal Novotny napsal(a):
> In the simplest case, we would need directory/file names of level 1 where > there was > a change. That's perhaps a little too specific though. I would still very > much welcome > this or overall list of modified paths. Not saying, I can't put together > some really messy > code to get that information from the patches :).
Not exactly true. Yes Copr git repository is quite flat and we have everything just in one level. But there are projects, which have much deeper structure (e.g. Spacewalk).
If you're not against shelling out commands, you could try: Get the list of commits: git rev-list old_commit..new_commit Get the list of file changed in a specific commit: git diff-tree --no-commit-id --name-only -r <hash of the commit>The problem is that we don't have the repository cloned at the point the fedmsg is received. And to always clone the repo to run the commands would be a bit troublesome.
Yes, the repository can be hundreds MB large. And we cannot keep it and cache it. So checking it out after every commit just to determine the information is overkill.