Change the way cache:paths and cache:untracked work together
Problem to solve
cache attribute of the job is processed in the same way as
artifacts. All the files matching the
cache:paths are taken with addition of
git ls-files -o if
cache:untracked is specified. However placing version-controlled files in the cache makes little to no sense and can easily lead to hardly discoverable bugs.
The behavior was taken from
artifacts attribute where it was reasonable.
Fix processing of
cache attribute so that specifying both
cache:untracked means "take files from
git ls-files -o and filter them against
Currently this point is not covered in documentation.