如何让git状态只打印暂存新文件夹的文件夹名称



在git中,如果没有暂存新文件夹,git status将只打印文件夹名称如下:

Untracked files:
(use "git add <file>..." to include in what will be committed)
new-folder/

但一旦暂存,git status将以这种方式打印新文件夹:

Changes to be committed:
(use "git restore --staged <file>..." to unstage)
new file:   new-folder/new-file-1
new file:   new-folder/new-file-2
new file:   new-folder/new-file-3
new file:   new-folder/new-file-4
...
new file:   new-folder/new-file-199
new file:   new-folder/new-file-200

有没有一种方法可以获得暂存更改的列表,但只获取暂存新文件夹的文件夹名称?

我正在编写一个脚本,通过git status --porcelain在提交之前获得修改/添加/删除的文件列表。在上述情况下,列表将太长。

git diff-tree @ `git write-tree`

是一个很好的起点,可以使用任何您想要的格式选项,如名称状态和diff过滤器。

最新更新