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 用法小记的更多相关文章

  1. Git的用法

    Git的用法 Git 的也可以理解为版本控制器.版本控制器(维基的解释):维护工程蓝图的标准作法,能追踪工程蓝图从诞生一直到定案的过程.此外,版本控制也是一种软件工程技巧,借此能在软件开发的过程中,确 ...

  2. 查找问题的利器 - Git Blame

    原文: http://gitbook.liuhui998.com/5_5.html  如果你要查看文件的每个部分是谁修改的, 那么 git blame 就是不二选择. 只要运行'git blame [ ...

  3. Git基础 - git blame

    当想知道一段代码历史上有哪些人修改时,可以使用git blame查看,正如其名,当你看到那段让你抓狂的代码时,一定想找出是谁写的来一顿blame吧 : ) 使用方法 icebug@localhost: ...

  4. git subtree用法(转)

    git subtree用法 一.使用场景 例如,在项目Game中有一个子目录AI.Game和AI分别是一个独立的git项目,可以分开维护.为了避免直接复制粘贴代码,我们希望Game中的AI子目录与AI ...

  5. git log用法【转】

    转自:http://www.cnblogs.com/gbyukg/archive/2011/12/12/2285419.html PHP技术交流群 170855791 git log 查看提交记录,参 ...

  6. [转]HttpClient的超时用法小记

    HttpClient的超时用法小记 HttpClient在使用中有两个超时时间,是一直接触和使用的,由于上次工作中使用httpClient造成了系统悲剧的情况,特地对它的两个超时时间进行了小小的测试, ...

  7. [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 ...

  8. Matlab norm 用法小记

    Matlab norm 用法小记 matlab norm (a) 用法以及实例 norm(A,p)当A是向量时norm(A,p)   Returns sum(abs(A).^p)^(1/p), for ...

  9. linux expect, spawn用法小记

    linux expect, spawn用法小记_IT民工_百度空间 linux expect, spawn用法小记 版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明http://sys ...

  10. [转载]expect spawn、linux expect 用法小记

    原文地址:expect spawn.linux expect 用法小记作者:悟世 使用expect实现自动登录的脚本,网上有很多,可是都没有一个明白的说明,初学者一般都是照抄.收藏.可是为什么要这么写 ...

随机推荐

  1. ubuntu实时查看网速

    可以使用ifstat这个命令 安装 apt install ifstat   1 使用,直接打命令就行 ifstat

  2. linux特殊权限rws和rwt

    Linux文件,除了rwx这些权限外,还有一些特殊的权限,如rws.rwt. 1.s权限(setuid) 1.1 设置方法:chmod u+s 该位可以让普通用户以root用户的角色运行只有root帐 ...

  3. 使用gitbook快速搭建文档中心

    背景 在研发一个系统,主要给公司内部同事用,按理说,简单点的话,搞个使用文档就行了,但产品经理希望是做成一个文档中心,比如,你学习个新技术的时候,比如vue,一般有个在线的帮助文档,他的想法就是这种. ...

  4. JS中的caller属性

    JS中的caller属性: 这个属性会返回一个调用该函数对象的外层函数引用.也就是说,如果我们是在函数B()中调用函数A()的,那么只要在A()中调用A.caller,结果就会返回B()functio ...

  5. vue中数字和字符串的转换问题(v-bind和v-model的使用)

    可以看到上面自增加时,成了拼接字符串的效果. 打开vue工具查看: 此时n和sum都是数字,可以正常自增加,但是操作了section之后,n就变成了字符串: 此时再执行自增加,sum也会变成字符串形式 ...

  6. 拒绝恶意IP登录服务器

    拒绝恶意IP登录服务器,并加入防火墙黑名单 #!/bin/bash #2020-03-20 16:39 #auto refuse ip dlu #By Precious ############### ...

  7. 01背包问题的js解决方式

    如果你有兴趣看这个相信你已经对背包问题有所了解,所以关于背包问题的描述,我就不写了. 只记录一下自己对这个问题的一些看法和思考,于我而言,这个东西现在困扰我的是如何确定最优解. 实质上关于背包问题网上 ...

  8. 通过HTML和JavaScript实现随机抽取幸运员工

    需求描述: 公司经常会要求IT部门做一个随机抽取员工页面,今天我们通过HTML和JavaScript来实现 HTML 结构 首先,我们需要编写 HTML 代码来定义页面结构和元素.下面是 HTML 代 ...

  9. go 中如何实现定时任务

    定时任务简介 定时任务是指按照预定的时间间隔或特定时间点自动执行的计划任务或操作.这些任务通常用于自动化重复性的工作,以减轻人工操作的负担,提高效率.在计算机编程和应用程序开发中,定时任务是一种常见的 ...

  10. 一文概览NLP句法分析:从理论到PyTorch实战解读

    关注TechLead,分享AI全维度知识.作者拥有10+年互联网服务架构.AI产品研发经验.团队管理经验,同济本复旦硕,复旦机器人智能实验室成员,阿里云认证的资深架构师,项目管理专业人士,上亿营收AI ...