提交 86df11b1 编写于 作者: J Junio C Hamano

Merge branch 'js/test-lint-pathname' into maint

The "t/" hierarchy is prone to get an unusual pathname; "make test"
has been taught to make sure they do not contain paths that cannot
be checked out on Windows (and the mechanism can be reusable to
catch pathnames that are not portable to other platforms as need
arises).

* js/test-lint-pathname:
  t/Makefile: ensure that paths are valid on platforms we care
......@@ -52,7 +52,8 @@ clean-except-prove-cache:
clean: clean-except-prove-cache
$(RM) .prove
test-lint: test-lint-duplicates test-lint-executable test-lint-shell-syntax
test-lint: test-lint-duplicates test-lint-executable test-lint-shell-syntax \
test-lint-filenames
test-lint-duplicates:
@dups=`echo $(T) | tr ' ' '\n' | sed 's/-.*//' | sort | uniq -d` && \
......@@ -67,6 +68,14 @@ test-lint-executable:
test-lint-shell-syntax:
@'$(PERL_PATH_SQ)' check-non-portable-shell.pl $(T) $(THELPERS)
test-lint-filenames:
@# We do *not* pass a glob to ls-files but use grep instead, to catch
@# non-ASCII characters (which are quoted within double-quotes)
@bad="$$(git -c core.quotepath=true ls-files 2>/dev/null | \
grep '["*:<>?\\|]')"; \
test -z "$$bad" || { \
echo >&2 "non-portable file name(s): $$bad"; exit 1; }
aggregate-results-and-cleanup: $(T)
$(MAKE) aggregate-results
$(MAKE) clean
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册