首页 > 解决方案 > git ls-files 返回空

问题描述

我正在尝试查找给定文件名的文件的路径。我试过命令

git ls-files --recurse-submodules -- IJob.java

其中 IJob.java 是文件名。但是该命令返回空。

[hema@localhost org.eclipse.jdt.core]$ git ls-files --recurse-submodules -- IJob.java
[hema@localhost org.eclipse.jdt.core]$ 

但是当我简单地输入 ls-files 时,该文件就会被列出。

[hema@localhost org.eclipse.jdt.core]$ git ls-files 
.......
.......
org.eclipse.jdt.core/search/org/eclipse/jdt/internal/core/search/matching/VariableLocator.java
org.eclipse.jdt.core/search/org/eclipse/jdt/internal/core/search/matching/VariablePattern.java
org.eclipse.jdt.core/search/org/eclipse/jdt/internal/core/search/processing/IJob.java
org.eclipse.jdt.core/search/org/eclipse/jdt/internal/core/search/processing/JobManager.java
pom.xml
tests-pom/pom.xml

为什么命令没有列出文件的完整路径。我必须包括什么

标签: gitgithubgitlab

解决方案


如果在 bash 中,请尝试git ls-files --recurse-submodules -- **/IJob.java.

如果它不起作用,请运行shopt globstar以查看是否globstar打开或关闭。如果它关闭,请运行shopt -s globstar以将其打开,然后该命令应该可以工作。

find . -name 'IJob.java'也应该工作。


推荐阅读