git查看代码是谁提交的

场景

前几天项目上线,然后评审代码的时候发现了一个变量命名的错误:本该用let命名的变量,却意外的写成了const。因为是在我的分支上发现的,一时矛头指向了我。

我提交代码的时候习惯挨个检查修改的文件内容,这肯定不是我写的。猜测是从别的分支合并过来的。

排查

第一种方法

  1. 我借助工具Git Extensions,找到对应的文件,查看文件历史
  2. 比对commits之间的文件差异

如上图右下方区域,就是这段代码,现在已经定位到了文件改动,但是又接着追踪了几个父commits,依然无法定位到直接修改文件的commit。

第二种方法(推荐)

通过命令可以直接列出来文件每一行的修改人信息

git blame - 显示修改和作者最后修改了文件的每一行

javascript 复制代码
git blame [filepath] -L[start],[end]

查看某个文件,第1行到第10行代码的最后修改信息(commitID,人,时间)

vscode安装插件后,鼠标放到指定行上,就会显示修改的信息

根据git blame命令我们可以看到commitId,然后根据commitId,去查找提交的记录


我是 甜点cc ,个人网站: home.i-xiao.space/vuepress-st...

实干是实干者的通行证!

公众号:【看见另一种可能】

相关推荐
777VG6 小时前
PostgreSQL +martin将多张表输出成一个 MVT
前端·数据库·postgresql
mayaairi7 小时前
JS循环语句深度解析:嵌套for、while与do...while
开发语言·前端·javascript
To_OC7 小时前
啃完流式输出:从一个卡顿的 LLM 接口开始,我搞懂了数据流到底怎么 “流”
前端·javascript·llm
阳光是sunny7 小时前
LangGraph实战教程:defer延迟节点——让收尾工作自动排到最后
前端·人工智能·后端
kyriewen8 小时前
我用了三周Claude Code Skills——总结出5条铁律,第3条最反直觉
前端·ai编程·claude
阳光是sunny8 小时前
LangGraph实战教程:控制流详解
前端·人工智能·后端
格尔曼Noah9 小时前
Safari浏览器中如何只允许指定网站下载
前端·safari
用户059540174469 小时前
用了3年Redis,才发现我一直没搞懂缓存一致性测试
前端·css
swipe9 小时前
07|(前端转后全栈)为什么后端也要缓存?从前端缓存思维理解 Redis
前端·后端·全栈
IT小盘9 小时前
05-企业项目统一接入多个大模型-适配器模式实战
前端·人工智能·适配器模式