Mercurial > hg
view tests/test-pull-permission.t @ 32471:014fa1ad5076
osx: override default exclude filter for pkgbuild
To quote `man 1 pkgbuild`:
--filter filter-expression
By default, --root will include the entire contents of the
given root-path in the package payload, except for any .svn
or CVS directories, and any .DS_Store files. You can override
these default filters by specifying one or more --filter
options. Each filter-expression is an re_format(7)
``extended'' expression: any path in the root which matches
any of the given expressions will be excluded from the pack-
age payload. (Note that specifying even one --filter inhibits
the default filters, so you must respecify the default fil-
ters if you still want them to be used.)
It turns out the default filter these days *also* includes .git and
.hg. Notice how that filter expression is a regular expression? That
(presumably unintentionally) prevents a file named "chg" or "_hg" from
getting included in the distribution. Many many thanks to spectral@
for trying to include a _hg file which led us to figure this bug out.
Bug filed with Apple for this as rdar://problem/32437369, mentioning
both the gap in documentation and the wrong defaults.
author | Augie Fackler <augie@google.com> |
---|---|
date | Fri, 26 May 2017 20:03:05 -0400 |
parents | 8fb6844a4ff1 |
children | eb586ed5d8ce |
line wrap: on
line source
#require unix-permissions no-root $ hg init a $ cd a $ echo foo > b $ hg add b $ hg ci -m "b" $ chmod -w .hg/store $ cd .. $ hg clone a b requesting all changes adding changesets adding manifests adding file changes added 1 changesets with 1 changes to 1 files updating to branch default 1 files updated, 0 files merged, 0 files removed, 0 files unresolved $ chmod +w a/.hg/store # let test clean up $ cd b $ hg verify checking changesets checking manifests crosschecking files in changesets and manifests checking files 1 files, 1 changesets, 1 total revisions $ cd ..