如何在我的主目录中打印所有Git repos的列表及其所有分支?

时间:2014-12-05 02:15:57

标签: macos git

我错误地将文件放在我系统上的许多存储库之一的某个分支中。我甚至不确定它是什么回购,但我认为如果我看到它,我会认出分支名称。

有没有办法打印出我所有存储库及其中包含的每个分支的列表?

1 个答案:

答案 0 :(得分:1)

这个命令可以解决问题:

find ~ -type d -name ".git" -print -exec git --git-dir={} branch \;

在您的主目录中搜索名为.git的每个目录。对于每个匹配的目录,它打印目录名称,然后运行git branch列出其分支,将目录名称传递给该命令。

由于我们正在搜索.git子目录而不是直接搜索repo根目录,因此打印并传递给git branch的目录名称包含最后的.git子目录。我认为可能有必要从目录名中删除它,但git branch可以正常使用它,所以这个简单的命令就足够了。