【问题标题】:Find all .git repositories in the home directory and figure out which have uncommited changes and unpushed branches查找主目录中的所有 .git 存储库,并找出哪些具有未提交的更改和未推送的分支
【发布时间】:2014-05-14 08:15:45
【问题描述】:

这已经被问过好几次了,但我没有看到任何令人满意的答案。我正在寻找一种方法:

  • 在主目录中查找所有 git 存储库
  • 对于每个存储库显示远程后面的分支
  • 没有任何远程对应的分支
  • 没有任何遥控器的存储库
  • 任何未提交的更改

有些部分可以完成其中一些任务,但我没有看到任何全面的内容。我即将启动一个 github 项目来执行此操作,但我想了解是否有现有的工具可以完成上述所有操作。

【问题讨论】:

  • 我正在编写脚本来从 Git 中提取数据(请注意,以上都不是),并发现在 PHP 中通过 exec 运行 git 命令已经绰绰有余了。我使用 Git 来帮助格式化(例如git log --oneline),然后使用普通的字符串操作来解析输出。

标签: git


【解决方案1】:

这对我有用 2 years

for rp in ~/*/
do
  printf '\ec'
  cd "$rp"
  git status
  echo "${rp%/}"
  read
done

git: Find all uncommited locals repos in a directory tree

Example

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-10-31
    • 1970-01-01
    • 2015-02-02
    • 2016-07-19
    • 1970-01-01
    • 2014-05-09
    • 2013-08-28
    • 1970-01-01
    相关资源
    最近更新 更多