如何让git log --oneline显示完整多行Git提交信息?
让Git log --oneline显示完整提交信息的方法
默认的git log --oneline只会提取提交信息的第一行(标题部分),要实现忽略空行并拼接所有提交内容的效果,你可以通过自定义日志格式结合文本处理工具来实现,具体步骤如下:
1. 直接使用组合命令
执行以下命令即可得到你想要的输出:
git log --format="%h %s %b" | sed '/^[[:space:]]*$/d' | sed 's/[[:space:]]\+/ /g'
各部分作用说明:
%h:输出短版本的提交哈希值%s:输出提交信息的标题行(第一行)%b:输出提交信息的正文部分- 第一个
sed命令:过滤掉所有空行(包括仅含空格的行) - 第二个
sed命令:将多个连续的空格替换为单个空格,避免拼接后出现冗余空格
2. 配置Git别名简化操作
如果需要频繁使用这个功能,可以将上述命令配置为Git别名,方便快速调用:
- 打开你的Git配置文件(全局配置用
~/.gitconfig,仓库局部配置用.git/config) - 添加以下内容:
[alias] oneline-full = !git log --format="%h %s %b" | sed '/^[[:space:]]*$/d' | sed 's/[[:space:]]\+/ /g'
- 保存后,直接执行
git oneline-full就能得到格式化后的完整提交日志。
测试你的示例提交时,该命令会输出:
d9ce3b ticket number is #1234 add a new css class in the select section.
内容的提问来源于stack exchange,提问作者foob.ar
相关产品推荐
相关产品推荐

