批处理文件,将git commit的更改文件写入变量

时间:2018-08-09 20:36:21

标签: git batch-file cmd git-commit

我想编写一个批处理脚本(并通过cmd运行),该脚本将特定git commit的更改文件写入变量。

我有以下代码:

@ECHO OFF
SetLocal EnableDelayedExpansion
set count=1
for %%m in ('git diff-tree --no-commit-id --name-only -r sha1-hash') do (
        set var!count!=%%m 
        set /a count=!count!+1
)
ECHO %var1%
ECHO %var2%
ENDLOCAL

var1和var2的回波返回:     'git代表var1     和diff-tree用于var2

如果我添加echo%var3%echo%var4%依此类推,则结果如下: 'git diff-tree --no-commit-id --name-only -r sha1-hash'echo off echo off echo off ...

所以我想我的git diff-tree ...-命令没有被视为命令。试图自行修复它,但不得不投降...您能帮我吗?

非常感谢!

1 个答案:

答案 0 :(得分:3)

  • 使用fwrite(buffer, BufferSize, 1, stdout)标志在文本中遍历标记。
  • 使用/F标志来循环显示一系列数字。

示例:

/L

有关详情,请参见此处:https://ss64.com/nt/for.html