【问题标题】:List all branches in all local git clones列出所有本地 git 克隆中的所有分支
【发布时间】:2012-12-15 14:15:43
【问题描述】:

随着时间的推移,我最终创建了多个不同存储库的 git 克隆,并且在一些克隆中,我创建了多个分支。我现在想找到具有特定分支的克隆。

我查看了 StackOverflow 问题,发现了以下帖子 Git Status Across Multiple Repositories on a Mac。以此为参考,我决定编写自己的 shell 脚本来列出所有克隆和每个克隆中的分支。但是,通过greping 在.git 目录中,我找不到任何提供此信息的地方。 HEAD 文件仅包含有关当前签出分支的信息。

我当然可以编写一个脚本来处理每个克隆工作目录中git branch 的输出。但是,在我开始之前,我想知道是否有更简单的方法来获取这些信息。

【问题讨论】:

    标签: git shell git-branch


    【解决方案1】:

    .git/refs/heads 应该包含你所有的本地分支。

    我很好奇——为什么在 shell 脚本中使用 git branch 不够?

    【讨论】:

    • 谢谢。 shell 脚本的工作方式或多或少类似于以下内容:find 所有.git 目录,然后将cd 放到它们的dirname 部分,然后在那里运行git branch。但是有了你的答案,它可以更简单(并且可能更快,因为它只涉及 shell 命令而没有 git 命令)。不过我的分析可能是错误的。
    • 这不是那么简单。 Refs can be packed.
    猜你喜欢
    • 2019-10-30
    • 2011-07-30
    • 2017-02-09
    • 2010-09-09
    • 2021-03-07
    • 2016-10-10
    • 2012-05-23
    • 2019-07-14
    相关资源
    最近更新 更多