You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何获取特定分支及当前分支的Git提交日志?

从当前分支获取提交日志 & 通过日志识别当前分支

当然可以啦,这两个需求都有非常实用的解决方法,我来给你详细说明:

1. 获取当前分支的Git提交日志

你提到的git log -10 --no-merges refs/remotes/origin/master是针对远程master分支的命令,针对当前分支的话其实更简单:

  • 直接使用默认行为:git log命令默认就是作用于当前分支的,所以你只需要去掉命令里的分支路径参数即可,比如:

    git log -10 --no-merges
    

    这条命令会直接输出当前分支最近10条非合并提交的日志。

  • 动态指定当前分支名(适合脚本场景):如果因为某些原因必须显式指定分支名(比如自动化脚本里),可以把git rev-parse --abbrev-ref HEAD的输出作为参数传入。命令如下:

    git log -10 --no-merges $(git rev-parse --abbrev-ref HEAD)
    

    如果需要获取当前分支对应的远程分支日志,只需要在分支名前加上origin/即可:

    git log -10 --no-merges origin/$(git rev-parse --abbrev-ref HEAD)
    

2. 通过Git日志查找当前分支

要在日志里识别当前分支的位置,关键是让Git显示分支的装饰信息,这样就能直观看到HEAD(当前工作区的指针)指向哪个分支:

  • 简洁版:带装饰的单行日志
    使用--decorate参数让日志显示分支、标签等关联信息,配合--oneline让输出更紧凑:

    git log --oneline --decorate
    

    输出示例会像这样,当前分支会被标记为HEAD -> 分支名:

    a1b2c3d (HEAD -> feature/payment, origin/feature/payment) Update payment gateway
    d4e5f6g Add checkout page UI
    
  • 直观版:分支结构图
    如果想同时看清分支的分叉、合并历史,加上--graph参数生成ASCII分支图:

    git log --graph --oneline --decorate
    

    这种方式能清晰展示当前分支在整个提交历史中的位置,非常适合梳理复杂的分支关系。

  • 快速确认:只看当前分支最新提交
    如果你只需要确认当前分支的最新提交及分支信息,可以用:

    git log -1 --decorate
    

    它会只输出当前分支的最后一条提交,直接显示HEAD指向的分支名。

内容的提问来源于stack exchange,提问作者sansalk

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.27 21:54:10