diff 与patch

[本文为Android嵌入式学习系列笔记 二]

目标:

理解diff与patch的使用,通过实例掌握了解新建文件的多种方式,以及如何在已有文件中追加内容

在软件开发中,经常会在提交前输出一个diff文件来检查以下代码的改动,比如用git 的时候 常git diff都是一样的。

在shell命令中diff 和patch还是很好用的。

下面通过实例熟悉下;

复制代码
//新建一个源文件
echo "hello diff" > testDiff

//复制一份并作适当修改
cp testDiff tesDiff1
echo -e "append some text:\n hello :)" >>testDiff1

//生成补丁文件
diff testDiff testDiff1 >diff.patch
复制代码

假如testDiff1是我们修改好的新文件,通过打补丁, 我们可以把testDiff1的改动合并到testDiff文件中,

//合并补丁
patch -po diff.patch

这样testDiff 中的内容将会和testDiff1中一致。

小结:

在上述实例中,新建文件是通过shell中的输出“>”来实现的,echo可以在屏幕上输出内容,配合输出符时,便将文本写到了文件testDiff中,而该文件原本不存在所以会新建一个。

接下来cp实现文件复制,再次利用echo 输出文本,此次的option为 -e 表示支持转义符, 再配合">>",将文本追加到末尾。

同理生成diff并输出到文件,最后用patch打补丁。

posted @   小文字  阅读(461)  评论(0编辑  收藏  举报
编辑推荐:
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
点击右上角即可分享
微信分享提示