按最后提交日期排序分支

Hacker News Top 工具

摘要

本文提供了一个技巧,通过配置 Git 来按最后提交日期对分支进行排序,从而简化了开发者的工作流程,相较于使用自定义脚本。

暂无内容
查看原文
查看缓存全文

缓存时间: 2026/08/30 21:46

# 按最后提交日期排列分支 来源:https://ryangreenberg.com/til/git-branches-by-commit-date/ ### 2026年8月24日 上午9:55 我的 git 分支太多了,和很多人一样,我编写了一个复杂的脚本来显示最近的分支。几年里我每天多次运行这个命令: `` function branches { for k in `git branch | sed "s/^..//"`; do echo -e `git log --color -1 --pretty=format:"%Cgreen%ci %Cblue%cr%Creset" "$k"`\\t"$k"; done | sort } `` 这个命令的输出将日期作为第一列,以便`sort`命令能正常工作。实际上,使用现代 git 完全没有必要这样做。只需配置 git 分支按最后提交日期排序: `` git config branch.sort committerdate `` 你也可以临时使用:`git branch --sort committerdate`。 还能按哪些字段排序?手册说明:“支持的键与 `git-for-each-ref(1)` 中的相同。”`git-for-each-ref` 的手册页(https://man.freebsd.org/cgi/man.cgi?query=git-for-each-ref&sektion=1&format=html)列出了许多字段,其中一些作为排序键我觉得没什么意义。以下是一些有趣的字段: - `authordate`、`committerdate`、`creatordate`、`taggerdate` - `contents:size`:提交或标签信息的字节大小。 - `push`:表示显示的引用的 `@{push}` 位置的本地引用名称。 - `refname`:引用的名称(`$GIT_DIR/` 之后的部分)(这是默认值)。 - `upstream`:可视为显示引用的“上游”的本地引用名称。 Git

相似文章

拆分 Git 提交

Hacker News Top

文章介绍了一个用于拆分 Git 提交的简单命令,与旧方法相比简化了流程,并引用了外部资源以提供上下文。

Git history 命令值得更多关注

Hacker News Top

文章重点介绍了新的 `git history` 命令及其 `fixup`、`reword` 和 `split` 子命令,这些命令提供了原子化且感知分支的提交历史编辑功能,带来了类似 jj 的益处,而无需切换版本控制系统。

接受混乱的 git 历史

Lobsters Hottest

一篇博客文章,讨论两种 git 工作流理念——频繁提交与谨慎变基——并解释为何在大型团队中,鉴于团队的韧性,混乱的历史是可以接受的,文中还提到了 GitHub 的新堆叠 PR 功能。