git - %f 在 git clean/smudge 过滤器中代表什么
问题描述
在我的~/.gitconfig
文件中,我看到有以下 lfs 过滤器:
[filter "lfs"]
clean = git-lfs clean -- %f
smudge = git-lfs smudge -- %f
process = git-lfs filter-process
required = true
问题:%f
lfs 过滤器中代表什么?我的理解是它代表文件路径,但我不确定它代表什么文件路径。
解决方案
在.gitattributes
“ filter
”部分中,它表示为:
过滤器命令行上的序列“
%f
”替换为过滤器正在处理的文件的名称。
过滤器可能会在关键字替换中使用它。例如:[filter "p4"] clean = git-p4-filter --clean %f smudge = git-p4-filter --smudge %f
请注意,“
%f
”是正在处理的路径的名称。
根据被过滤的版本,磁盘上的相应文件可能不存在,或者可能有不同的内容。因此,
smudge
命令clean
不应尝试访问磁盘上的文件,而应仅作为标准输入上提供给它们的内容的过滤器。
推荐阅读
- python - Pandas 数据框应用速度问题 - 还有其他方法吗?
- debugging - 是否有任何代码可以使用任何 UWP 操作本地存储
- neo4j - 相关节点上的 Cypher 查询过滤器
- android - 如何使用 android 中的互联网连接检查手机检查服务器连接是否可用?
- c# - 使用 SQL Server Management Studio 时如何在 web.config 中添加连接字符串?
- xamarin.forms - 消息中心未从 xamarin ios 任务调用
- c++ - 如何在 QByteArray 中找到两个无符号字符
- python - 如何在 aws-glue 中使用 python 包
- rest - 为什么编码的“斜线”在restful api中不能按预期工作?
- java - Eclipse 文件未出现在提交中