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

时间:2015-08-07 03:48:37

标签: linux git smartgit

我有几百个远程和本地分支机构。我想知道是否有命令帮助我找到所有分支中具有特定名称的文件夹。

我的git版本是1.8.3.1。如果重要的话我也会安装smartgit。

提前致谢。

2 个答案:

答案 0 :(得分:1)

以下命令将输出指向包含变量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

答案 1 :(得分:0)

您可以运行以下列出所需的文件夹/文件

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