void-packages/common/travis/changed_templates.sh
Đoàn Trần Công Danh b881f32687 travis/changed_templates: filter by git itself
- Use plumbing git-diff-tree(1) instead of porcelain git-diff(1)
- Disable rename detection, gains some speed up and fix missing template
  with name-status Renamed and Copied.
- Use "--diff-filter" to filter by Git itself.
- Tell Git to only check 'srcpkgs/*/template', this glob will only look
  into template file inside direct sub-directory of srcpkgs
- With all of those options, we don't need a grep and a pipe
2020-05-31 02:10:29 +00:00

16 lines
401 B
Bash
Executable file

#!/bin/sh
#
# changed_templates.sh
if command -v chroot-git >/dev/null 2>&1; then
GIT_CMD=$(command -v chroot-git)
elif command -v git >/dev/null 2>&1; then
GIT_CMD=$(command -v git)
fi
/bin/echo -e '\x1b[32mChanged packages:\x1b[0m'
$GIT_CMD diff-tree -r --no-renames --name-only --diff-filter=AM FETCH_HEAD HEAD -- 'srcpkgs/*/template' |
cut -d/ -f 2 |
tee /tmp/templates |
sed "s/^/ /" >&2