是否可能有git状态只显示修改的文件,因为在我的情况下,有太多的阶段性文件?


当前回答

你不能用git status来这样做,但是你可以使用git ls-files -m来显示所有修改过的文件。

其他回答

如果你想列出修改过的文件,你可以这样做:

git log -n1 --oneline --name-status | grep '^M'

我正在寻找相同的信息,发现以下给出修改文件:

git status -uno

问题是我有太多的阶段性文件,我不想提交或gitignore的时刻,我不能向上滚动。

虽然这可能不能直接回答只列出修改过的文件的问题,但它可能有助于限制列出的文件数量。

您可以传递一个路径到git状态,以限制输出到repo中的特定文件夹。

例如:

git status app
git status spec
git status src/components

要列出修改过的文件,请使用:

git ls-files -m

如果你只想要basename(没有路径),那么你可以使用xargs将每个结果一行一行地输送到basename命令:

git ls-files -m | xargs -L 1 basename

看起来git status -uno只会显示git正在跟踪的文件,而不会显示目录中的其他内容。这并不完全是您所要求的,但可能完成了相同的事情(获得git跟踪的可读长度的文件列表)。