创建Quilt数据包时,如何排除一种或多种指定文件类型?
排除特定文件类型创建Quilt数据包
命令行界面(CLI)操作
Quilt的CLI工具提供了--exclude(或简写-e)参数,用来指定要排除的文件模式,支持glob通配符:
- 单次排除一种类型:比如排除所有
.txt文件,执行类似命令:quilt add --exclude "*.txt" my_quilt_package ./target_directory - 排除多种类型:可以重复使用
--exclude参数,或者用shell支持的大括号语法(需确保shell解析正确):# 重复使用--exclude quilt add --exclude "*.txt" --exclude ".DS_Store" my_quilt_package ./target_directory # 大括号组合(部分shell如bash支持) quilt add --exclude "{*.txt,.DS_Store}" my_quilt_package ./target_directory
如果要排除子目录里的对应文件,用**/*.txt这种递归通配符即可。
Python库程序化操作
使用quilt3库时,Package.add()方法支持exclude参数,接受字符串或字符串列表,同样支持glob模式:
import quilt3 # 初始化数据包 pkg = quilt3.Package() # 添加目录并排除指定类型文件 pkg.add( "package_dir", # 数据包内的目标路径 "./local_source_dir", # 本地目录路径 exclude=["*.txt", ".DS_Store", "**/*.log"] # 可同时排除多种,**/表示递归子目录 ) # 推送数据包到远程仓库 pkg.push("my_username/my_package", "s3://my-bucket")
注意:exclude参数的glob模式遵循Python的pathlib.Path.glob()规则,能灵活匹配不同层级的文件。
内容的提问来源于stack exchange,提问作者tatlar
相关产品推荐
相关产品推荐

