如何执行以下命令获取不带路径的文件名?
因此,从字面上看,该命令所说的“仅名称” - 不是文件路径,只是文件名。
git diff --name-only <commit> <commit>
最佳答案
据我所知,git 没有提供这一点,因为这是一个非常不寻常的要求。例如,我在存储库中的第一次尝试产生了大约十几行,每行都显示 pom.xml
因为我刚刚创建了一个新版本。
不过,您可以使用一个小脚本。 basename
是你的 friend 。
我喜欢 xargs
所以我会这样做
git diff --name-only <commit> <commit> | xargs -n1 basename
如果 git diff
没有提供输出,这将失败。
或者循环版本
for s in `git diff --name-only <commit> <commit>` ; do basename $s ; done
关于git diff --仅名称,没有文件路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26280268/