加入收藏 | 设为首页 | 会员中心 | 我要投稿 西安站长网 (https://www.029zz.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 建站 > 正文

差异文件(diff)和补丁文件(patch)简介

发布时间:2018-09-19 19:46:07 所属栏目:建站 来源:Phil Estes
导读:副标题#e# 9月15日技术沙龙 | 与东华软件、AWS、京东金融、饿了么四位大咖探讨精准运维! 这篇文章介绍 差异文件 diff 和 补丁文件 patch ,以及它们如何在开源项目中使用的例子。 如果你曾有机会在一个使用分布式开发模型的大型代码库上工作过,你就应该听

……下面是 diff 命令的输出:

  1. diff -Naur sources-orig/officespace/interest.go sources-fixed/officespace/interest.go
  2. --- sources-orig/officespace/interest.go        2018-08-10 16:39:11.000000000 -0400
  3. +++ sources-fixed/officespace/interest.go       2018-08-10 16:39:40.000000000 -0400
  4. @@ -11,15 +11,13 @@
  5.    InterestRate float64
  6.  }
  7.  
  8. +// compute the rounded interest for a transaction
  9.  func computeInterest(acct *Account, t Transaction) float64 {
  10.  
  11.    interest := t.Amount * t.InterestRate
  12.    roundedInterest := math.Floor(interest*100) / 100.0
  13.    remainingInterest := interest - roundedInterest
  14.  
  15. -  // a little extra..
  16. -  remainingInterest *= 1000
  17. -
  18.    // Save the remaining interest into an account we control:
  19.    acct.Balance = acct.Balance + remainingInterest

最开始几行 diff 命令的输出可以这样解释:三个 --- 显示了原来文件的名字;任何在原文件(LCTT 译注:不是源文件)里存在而在新文件里不存在的行将会用前缀 -,用来表示这些行被从源代码里“减去”了。而 +++ 表示的则相反:在新文件里被加上的行会被放上前缀 +,表示这是在新文件里被“加上”的行。补丁文件中的每一个补丁“块”(用 @@ 作为前缀的的部分)都有上下文的行号,这能帮助补丁工具(或其它处理器)知道在代码的哪里应用这个补丁块。你能看到我们已经修改了“Office Space”这部电影里提到的那个函数(移除了三行并加上了一行代码注释),电影里那个有点贪心的工程师可是偷偷的在计算利息的函数里加了点“料”哦。(LCTT译注:剧情详情请见电影 https://movie.douban.com/subject/1296424/)

(编辑:西安站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读