git lfs:路径中的通配符在 git 别名中不起作用
在Windows系统上,我想锁定特定文件夹中具有扩展名的所有文件。
这些命令按预期工作:
git lfs lock $(git rev-parse --show-toplevel)/lockdata/*.txt
git lfs unlock $(git rev-parse --show-toplevel)/lockdata/*.txt
git add $(git rev-parse --show-toplevel)/lockdata/*.txt"
现在我定义别名:
git config --local alias.libsadd "add $(git rev-parse --show-toplevel)/lockdata/*.txt"
git config --local alias.libslock "lfs lock $(git rev-parse --show-toplevel)/lockdata/*.txt"
git config --local alias.libsunlock "lfs unlock $(git rev-parse --show-toplevel)/lockdata/*.txt"
然后 .git/config 文件包含:
[alias]
libslock = lfs lock E:/TEMP/test_lfs/lockdata/*.txt
libsunlock = lfs unlock E:/TEMP/test_lfs/lockdata/*.txt
test = add E:/TEMP/test_lfs/lockdata/*.log
“git libsadd”按预期工作。 “git libslock”不会:
$ git libslock
lfs: unable to canonicalize path "E:/TEMP/test_lfs/lockdata/*.txt": The filename, directory name, or volume label syntax is incorrect.
直接在 git bash 中执行按预期工作
$ git lfs lock E:/TEMP/test_lfs/lockdata/*.txt
Locked lockdata/aaa.txt
Locked lockdata/bbb.txt
在命令行中执行会执行其他操作(锁定不存在的“*.txt”文件),因此批处理文件不是解决方法
别名中出现不同行为的任何想法来自(以及如何修复)?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论