fix(commitpkg): only force existing files to be under version control
Before porting commitpkg to Git, the code has checked the SVN status for none commited files. During the port this has changed by straight checking for any passed files if they were under version control or not. In general the whole logic is very brittle as variables are searched by regex and directly passed to eval while ignoring any function scoping. This leads to missing files when they reference the $pkgname inside a package function but also provide wrong ones when eval simply returns the first $pkgname while ignoring and function scopes. In the future this should completely be replaces by .SRCINFO processing. Fixes #145 Signed-off-by: Levente Polyak <anthraxx@archlinux.org>
This commit is contained in:
parent
71cb9e97bb
commit
3283b2ca59
|
@ -129,6 +129,10 @@ done
|
|||
# assert that they really are controlled by git
|
||||
if (( ${#needsversioning[*]} )); then
|
||||
for file in "${needsversioning[@]}"; do
|
||||
# skip none existing files
|
||||
if [[ ! -f "${file}" ]]; then
|
||||
continue
|
||||
fi
|
||||
if ! git ls-files --error-unmatch "$file"; then
|
||||
die "%s is not under version control" "$file"
|
||||
fi
|
||||
|
|
Loading…
Reference in New Issue