[英]Get “git describe --abbrev=0” results into a variable
目标:将git describe --tag=Foo --abbrev=0
的输出转换为Windows环境变量。
我的尝试:
C:\Projects\Foo> FOR /F "tokens=* USEBACKQ" %F IN \
(`git describe HEAD --match "Foo*" --abbrev=0 --debug`) DO SET Var=%F
结果:
describe HEAD refs或tags上没有完全匹配,搜索描述
完成搜索d501f4f270405435692e5eb369fafbb53f0c74a2注释463 Foo0.0-beta遍历562次提交
describe 0 fatal:不是有效的对象名0
这是一个奇怪的致命错误。 没有FOR
,Git工作:
git describe HEAD --match "Foo*" --abbrev=0 --debug
在refs或标签上没有完全匹配,搜索描述
完成搜索d501f4f270405435692e5eb369fafbb53f0c74a2注释463 Foo0.0-beta遍历562次提交
Foo0.0-β
现在describe 0 fatal
可以追溯到--abbrev=0
参数,但这是一个重要的论点。 似乎FOR
已经将--abbrev=0
参数分成两部分,这导致Git将0
视为哈希值,并试图找到一个标记来描述该哈希值。
使用插入符号逃脱=(^)
FOR /F "tokens=* USEBACKQ" %F IN \
(`git describe HEAD --match "Foo*" --abbrev^=0 --debug`) DO SET Var=%F
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.