根据上次提交日期订购 git 个存储库

Order git repositories based on the last commit date

我有一个文件夹,每个子文件夹中有 git 个存储库

folder
./repo1    // last commit 1 week ago
./repo2    // last commit 1 day ago
./repo3    // last commit 1 month ago

我想根据最后一次提交的日期对存储库进行排名,以查看最近修改的存储库

结果

repo2
repo1
repo3

请问我该怎么做? 非常感谢

for repository in ./*/; do
    git -C "$repository" --no-pager log -1 --all --format="%at $(basename $repository)" 2>/dev/null;
done | sort -r | cut -d' ' -f2-

这遍历存储库,使用 git log 检索上次提交时间戳并以这种形式生成输出:

571228806 repo1
571043015 repo2
570539599 repo3
...

然后将列表反向排序并剪切以删除时间戳。请注意,您可以通过更改传递给 git log.

的格式字符串来输出有关每个存储库最后一次提交的更多信息