使用git ls-files列出来自root而不是当前工作目录的文件

orl*_*rlp 11 git

我正在寻找类似于以下的命令,但它始终从存储库根目录而不是当前工作目录中列出:

git ls-files --cached --others --exclude-standard
Run Code Online (Sandbox Code Playgroud)

如果可能的话,我宁愿不使用bash/batch,因为我正在寻找一个跨平台的解决方案.

tom*_*tom 6

如果可以创建别名,

git config --global alias.ls-files-root "! git ls-files"
Run Code Online (Sandbox Code Playgroud)

那你应该可以做到

git ls-files-root --cached --others --exclude-standard
Run Code Online (Sandbox Code Playgroud)

说明:以'!'开头的别名 从顶级目录执行shell命令.相关:有没有办法在一个命令中获取git根目录?.


Blu*_*luu 5

如果不能选择Git别名,则可以通过2个命令完成:

git ls-files $(git rev-parse --show-toplevel)
Run Code Online (Sandbox Code Playgroud)