【发布时间】:2021-11-16 02:11:14
【问题描述】:
运行 git diff --name-only 会给我一个这样的文件列表
file1
file2
Astyle 的用法是这样的
astyle.exe --options=myoptionsfile <file1> <file2>
我想要一种将git diff --name-only 的输出作为astyle 程序调用中指定的文件列表的方法,而不是手动指定每个文件。
有人知道怎么做吗?
【问题讨论】:
运行 git diff --name-only 会给我一个这样的文件列表
file1
file2
Astyle 的用法是这样的
astyle.exe --options=myoptionsfile <file1> <file2>
我想要一种将git diff --name-only 的输出作为astyle 程序调用中指定的文件列表的方法,而不是手动指定每个文件。
有人知道怎么做吗?
【问题讨论】:
【讨论】:
git diff --name-only 将返回多行输出。为了使上述工作,需要从f1\nf2 转换为f1 f2。考虑到这在 Windows 上运行,shell 之间的行为非常不一致......这可能有点挑战。
bash,它会自动执行此操作。试试echo $(git diff --name-only)
在 Windows 上使用 Git Bash 或 cygwin 或任何 linux 模拟器怎么样:
git diff --name-only | xargs astyle.exe --options=myoptionsfile
你也可以using Powershell。
【讨论】: