惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

aimingoo的专栏
aimingoo的专栏
宝玉的分享
宝玉的分享
J
Java Code Geeks
Martin Fowler
Martin Fowler
博客园 - Franky
I
InfoQ
Stack Overflow Blog
Stack Overflow Blog
Blog — PlanetScale
Blog — PlanetScale
S
SegmentFault 最新的问题
B
Blog
The Cloudflare Blog
F
Fortinet All Blogs
量子位
腾讯CDC
博客园 - 司徒正美
D
Docker
大猫的无限游戏
大猫的无限游戏
Microsoft Azure Blog
Microsoft Azure Blog
T
The Blog of Author Tim Ferriss
V
Visual Studio Blog
IT之家
IT之家
Last Week in AI
Last Week in AI
D
DataBreaches.Net
小众软件
小众软件

博客园 - 云起

ArcGISPro SDK Addin打包机制 一次 ArcGISPro Addin项本地化的排查实录 记一次arm机器装系统的经历 记一次vs中无法找到win sdk的问题 arcpy运行时,报错产品许可尚未初始化 Visual Studio 2022生成解决方案代码图报错“无法连接到指定的数据库” win10下定制文件夹 excel中,根据文件名查询文件路径 ArcGISPro SDK 3.1版本中使用QueuedTask的小问题 Compress-Archive压缩zip包的小瑕疵 Pro更新字段别名,重载数据后失效 在多个office文档内替换关键字 xlst处理时命名空间带来的小坑 更新压缩流 使用excel生成简单的日历 微软中文输入法带来的一点小坑,导致arcgispro输入中文异常 使用C#获取文件详情 Pro更改启动界面 使用AES加密时,结果不一样 命令行程序读取注册表失败的分析 pg_index
git日志分组
云起 · 2025-06-05 · via 博客园 - 云起

查看变更记录时,希望按日期分好组,以便跟踪功能变化

git log --date=short --pretty=format:"%cd|%h %s" --since="7 days ago" | sort | awk -F'|' '{a[$1]=a[$1] $2 "\n"} END {for (k in a) print "\n提交日期:"k"\n" a[k]}'
  1. 依赖git log,获取日志信息。通过--since,设定查询范围,避免日志过多。日期格式采用短型,固定长度并且方便后续排序。输出格式化时,添加分隔符,以便后续操作。
  2. 使用awk进行文本处理 https://www.runoob.com/linux/linux-comm-awk.html
    awk 'BEGIN { ... } 
         pattern1 { action1 } 
         pattern2 { action2 } 
         END { ... }'
    
    • 通过-F设定分割符号(避免使用git提交记录中会使用的字符,造成分割错误)。
    • 然后把分割信息放到关联数组中,用日期作为键,采用换行拼接
    • 使用for,遍历日期,格式化输出(我这里就是加了个日期标头)
  3. 如果要控制顺序的话,可以先对关联数组排序。for遍历关联数组的时候,使用的是键排序,可以使用sort或者asorti进行干预,控制输出顺序。