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

推荐订阅源

F
Fortinet All Blogs
aimingoo的专栏
aimingoo的专栏
V
Visual Studio Blog
罗磊的独立博客
爱范儿
爱范儿
J
Java Code Geeks
博客园 - 司徒正美
N
Netflix TechBlog - Medium
Microsoft Security Blog
Microsoft Security Blog
美团技术团队
小众软件
小众软件
Google DeepMind News
Google DeepMind News
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
V
V2EX
博客园 - 聂微东
云风的 BLOG
云风的 BLOG
WordPress大学
WordPress大学
H
Hackread – Cybersecurity News, Data Breaches, AI and More
Jina AI
Jina AI
Y
Y Combinator Blog
博客园 - 叶小钗
人人都是产品经理
人人都是产品经理
Martin Fowler
Martin Fowler
Vercel News
Vercel News

博客园 - 云起

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进行干预,控制输出顺序。