git blame 用法小记
1、概述
git管理的代码仓库,在协作开发中不可避免地会出现代码冲突,或者有新手错误地提交代码。出现问题不可怕,可怕的是找不到问题出在哪里。有时候找到出问题的代码,却不知道是谁提交的。git提供了一个有用的命令git blame来帮你查看一个文件的每一行是如何被修改的,以及由谁修改的。它可以帮助开发者跟踪代码的变化历史,找出每行代码的作者和最后一次修改的提交信息,以便更好地了解代码的演变过程和责任分配。
2、用法
以下是一些 git blame 命令的基本用法和示例:
基本用法:
git blame <file>
其中 <file> 是要查看的文件的路径。
查看文件的行级变更历史:
git blame -L <start>,<end> <file>
-L 选项允许你指定查看的行范围,<start> 和 <end> 是行号。这将显示指定行范围内的代码,并标明每一行最后一次修改的提交和作者。
显示每行的详细信息:
git blame -p <file>
-p 选项将显示每一行的详细信息,包括提交的哈希值、作者、时间戳和行号。
以图形化方式查看 git blame 输出:
git blame -C -M <file>
-C 选项用于查找代码重命名,而 -M 选项用于查找移动代码块。这样可以更好地追踪代码的变化,即使代码被重命名或移动。
3、总结
git blame 是一个非常有用的工具,可以帮助你了解代码的变更历史,找到问题的根本原因,或者识别谁在特定代码段上工作。然而,要注意,它可以用来审查代码贡献,但应该以合适的方式使用,以尊重团队成员的隐私和合作精神。
git blame 用法小记的更多相关文章
- Git的用法
Git的用法 Git 的也可以理解为版本控制器.版本控制器(维基的解释):维护工程蓝图的标准作法,能追踪工程蓝图从诞生一直到定案的过程.此外,版本控制也是一种软件工程技巧,借此能在软件开发的过程中,确 ...
- 查找问题的利器 - Git Blame
原文: http://gitbook.liuhui998.com/5_5.html 如果你要查看文件的每个部分是谁修改的, 那么 git blame 就是不二选择. 只要运行'git blame [ ...
- Git基础 - git blame
当想知道一段代码历史上有哪些人修改时,可以使用git blame查看,正如其名,当你看到那段让你抓狂的代码时,一定想找出是谁写的来一顿blame吧 : ) 使用方法 icebug@localhost: ...
- git subtree用法(转)
git subtree用法 一.使用场景 例如,在项目Game中有一个子目录AI.Game和AI分别是一个独立的git项目,可以分开维护.为了避免直接复制粘贴代码,我们希望Game中的AI子目录与AI ...
- git log用法【转】
转自:http://www.cnblogs.com/gbyukg/archive/2011/12/12/2285419.html PHP技术交流群 170855791 git log 查看提交记录,参 ...
- [转]HttpClient的超时用法小记
HttpClient的超时用法小记 HttpClient在使用中有两个超时时间,是一直接触和使用的,由于上次工作中使用httpClient造成了系统悲剧的情况,特地对它的两个超时时间进行了小小的测试, ...
- [Practical Git] Show who changed a line last with git blame
When working on a file, we often want to know who made certain changes last; we can use git blame to ...
- Matlab norm 用法小记
Matlab norm 用法小记 matlab norm (a) 用法以及实例 norm(A,p)当A是向量时norm(A,p) Returns sum(abs(A).^p)^(1/p), for ...
- linux expect, spawn用法小记
linux expect, spawn用法小记_IT民工_百度空间 linux expect, spawn用法小记 版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明http://sys ...
- [转载]expect spawn、linux expect 用法小记
原文地址:expect spawn.linux expect 用法小记作者:悟世 使用expect实现自动登录的脚本,网上有很多,可是都没有一个明白的说明,初学者一般都是照抄.收藏.可是为什么要这么写 ...
随机推荐
- 甲骨文宣布: 也做 PostgreSQL!
PostgreSQL 在开源数据库世界中一直是一个标志性的存在.经过35年的严格开发,它以其可靠性.强大的功能和性能而自豪.DB-engines 的突出显示,其市场份额的增长证明了其适应性强的数据模型 ...
- socket应用的例子
当使用 C 语言实现 Socket 编程时,可以通过系统提供的网络库来实现网络通信.以下是一个简单的示例,演示了如何创建一个简单的服务器和客户端,实现客户端向服务器发送消息并接收回复的功能. 服务器端 ...
- visio 2010 kit tools
Getting Office License Configuration Information.---------------------------------------Backing Up L ...
- Frog 3 题解
Frog 3 题目大意 题意都这么明确了还要这个干什么. 存在 \(n\) 个点,每个点有一个属性 \(h_i\),\(h_i\) 单增,从点 \(i\) 移动到点 \(j(j>i)\) 的代价 ...
- 【Vue3响应式入门#01】Reactivity
专栏分享:vue2源码专栏,vue3源码专栏,vue router源码专栏,玩具项目专栏,硬核推荐 欢迎各位ITer关注点赞收藏 背景 以下是柏成根据Vue3官方课程整理的响应式书面文档 - 第一节, ...
- C# ref, in, out关键字
写在前面:大内老A的这篇"老生常谈:值类型VS引用类型"放在微信收藏里好几个月了,终于趁着要讲JAVA传参机制的时候仔细地按照这篇博客,自己写代码跑一下,对C#的传参,ref,in ...
- 【Azure Logic App】在Azure Logic App中使用SMTP发送邮件示例
问题描述 在Azure Logic App的官网介绍中,使用SMTP组件发送邮件非常简单(https://docs.azure.cn/zh-cn/connectors/connectors-creat ...
- 20.1 OpenSSL 字符BASE64压缩算法
OpenSSL 是一种开源的加密库,提供了一组用于加密和解密数据.验证数字证书以及实现各种安全协议的函数和工具.它可以用于创建和管理公钥和私钥.数字证书和其他安全凭据,还支持SSL/TLS.SSH.S ...
- Ubuntu16.04 设置jar开机自启脚本
1.编写脚本 后缀 ".sh" #! /bin/sh ### BEGIN INIT INFO # Provides: start-adb-connect-manager # Re ...
- alibaba fastjson的JsonObject有序的实现和源码分析
介绍 FastJson是阿里巴巴的开源JSON解析库,它可以解析JSON格式的字符串,支持将Java Bean序列化为JSON字符串,也可以从JSON字符串反序列化到JavaBean.在使用的过程中, ...