在所有远程和本地 GIT 分支中查找特定文件夹

Find a specific folder in all remote and local GIT branches

我有几百个远程和本地分支机构。请问有没有命令可以帮我在所有分支中找到一个特定名称的文件夹

我的 git 版本是 1.8.3.1。如果重要的话,我还安装了 smartgit。

提前致谢。

您可以运行在下面列出您需要的folders/files

for line in `git for-each-ref --format="%(refname)" refs/heads`; do git ls-tree -r $line | grep 'file_regex' done

以下命令将输出所有指向包含变量SEARCH_PATH

中指定路径的提交的引用(本地和远程)
SEARCH_PATH="somePath"

git for-each-ref --format="%(refname)" refs/heads refs/remotes | 
   while read ref
      do 
         if [[ `git ls-tree -r --name-only $ref` =~ "$SEARCH_PATH" ]] ; then                 
           echo $ref; 
         fi
   done