Git命令获取所有带有更改的文件夹

时间:2016-05-31 00:14:36

标签: git bash

我正在试图弄清楚git命令是什么让所有文件夹都有变化。

git diff --name-only

但是这会改变所有实际文件吗?

1 个答案:

答案 0 :(得分:4)

要获取包含更改的路径,请将输出通过xargs传递到dirname

git diff --name-only | xargs dirname | uniq

这将从相对路径中删除所有文件名并删除所有重复项。

例如:

$ git diff --name-only
app/lib/sub/dirlist.cpp
app/net/rpc.cpp
config/config.txt
dirname将返回后

$ git diff --name-only | xargs dirname | uniq
app/lib/sub
app/net
config

xargs采用多行(列表输出)并依次在每个行上运行以下命令(本例中为dirname)。 uniq将从输出中删除重复项。