[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Backwards compatibility bug
From: |
Troy Bridoux |
Subject: |
Backwards compatibility bug |
Date: |
Thu, 04 Jul 2002 10:17:53 -0700 |
As of tar 1.13, the semantics on the -X argument have changed from
excluding full pathnames to excluding only base names.
For example, if I have an exclude file that says
dir/base
then the following file will _still_ be archived
dir/base
whereas if I have an exclude file that says
file
then the following file will _not_ be archived
dir/base
Now I think this change is great if you want to exclude a bunch of
files called "base" in miscellaneous directories.
But it's not great if you want to prune specific directory branches.
I think we can have both worlds. The excluded filenames should just
not be blindly matched against only basenames.
The excluded filenames should match on the tail portion of all the file
paths to be archived. In other words:
(1)
base
should exclude
root/dir/base
dir/base
base
and thus (by directory containment)
root/dir/base/*
dir/base/*
base/*
but not
root/dir/_base
_base
This is what happens with tar 1.13, I believe.
(2)
dir/base
should exclude
root/dir/base
dir/base
and thus (by directory containment)
root/dir/base/*
dir/base/*
but not
base
_dir/base
and thus (by directory containment)
base/*
_dir/base/*
This is what happens with tar 1.12, I believe.
Until this is fixed, I am forced to stay with tar 1.12.
Thank you
- Backwards compatibility bug,
Troy Bridoux <=