今天在排查一处程序 bug 时,发现一段代码写的逻辑实在乱,完全没有印象正确的逻辑应该是怎样的。 于是想查看这段代码是不是自己写的,什么时候写的,为什么这么写的。
直接在 VSCode 的 github copilot 的 Chat 窗口中问了一下:
如何通过 git 命令查看某段代码是那个提交修改的:例如:
line1
line2
line3
得到的回答是,可以试试 git blame 命令。试了一下,非常好用。
git blame 示例
例如, 我想查看 models/product.go 文件中第 10 到 13 行的修改记录,可以运行:
git blame -L 10,13 models/product.go
执行结果如下图:
可以看到每一行代码前面都有一个 commit hash 和作者信息。通过这些 hash 可以进一步查看具体的提交内容。
git show <commit-hash>
VSCode 中查看 git blame 信息
网上搜索了一下,发现 VSCode 内置了 git blame 功能,可以直接在编辑器中查看每行代码的最后修改信息。
参考,VSCode 的官方文档:
https://code.visualstudio.com/docs/sourcecontrol/overview
可以看到,编辑区域的底部的 Status Bar 上会显示当前行的最后修改信息,点击可以查看更多详情。如下图所示:
还是 VSCode 方便啊。
关于作者 🌱
我是来自山东烟台的一名开发者,有感兴趣的话题,或者软件开发需求,欢迎加微信 zhongwei 聊聊, 查看更多联系方式