使用git工具管理泰山派内核源码目录及抽打补丁简易流程

embedded/2024/10/21 10:14:06/

目录

git%E5%B7%A5%E5%85%B7%E7%AE%A1%E7%90%86%E7%AB%8B%E5%88%9B%E6%B3%B0%E5%B1%B1%E6%B4%BE%E5%86%85%E6%A0%B8%E6%BA%90%E7%A0%81%E7%9B%AE%E5%BD%95%E5%8F%8A%E6%8A%BD%E6%89%93%E8%A1%A5%E4%B8%81%E7%AE%80%E6%98%93%E6%B5%81%E7%A8%8B-toc" style="margin-left:40px;">使用git工具管理泰山派内核源码目录及抽打补丁简易流程

git%E7%BB%B4%E6%8A%A4%E6%BA%90%E7%A0%81-toc" style="margin-left:80px;">一、使用git维护源码

git%20%E5%B8%B8%E7%94%A8%E7%9A%84%E4%B8%80%E4%BA%9B%E6%93%8D%E4%BD%9C-toc" style="margin-left:80px;">二、git 常用的一些操作

三、抽补丁

四、打补丁

五、补充


git%E5%B7%A5%E5%85%B7%E7%AE%A1%E7%90%86%E7%AB%8B%E5%88%9B%E6%B3%B0%E5%B1%B1%E6%B4%BE%E5%86%85%E6%A0%B8%E6%BA%90%E7%A0%81%E7%9B%AE%E5%BD%95%E5%8F%8A%E6%8A%BD%E6%89%93%E8%A1%A5%E4%B8%81%E7%AE%80%E6%98%93%E6%B5%81%E7%A8%8B">使用git工具管理泰山派内核源码目录及抽打补丁简易流程

最近,在做linux开发的过程中入手了一块泰山派RK3566的开发板,在官方提供的各种资料中,关于屏幕等等的设备驱动其修改后的设备树文件有使用补丁的方式提供给开发者。学会这种维护修改方式后会十分便捷,以下介绍下使用git工具及抽打补丁的简易流程。

git%E7%BB%B4%E6%8A%A4%E6%BA%90%E7%A0%81">一、使用git维护源码

linux下安装git工具
sudo apt update
sudo apt-get install git
配置用户名
git config --global user.name "your name"
配置用户的邮箱
git config --global user.email "your email"
进入到泰山派SDK下的kernel目录(内核源码目录),这里的目录需要改成自己的泰山派内核源码目录
cd ~/tspi/tspi_linux_sdk/kernel
创建一个新的本地git仓库
git init
创建完成后,当前的kernel目录下会出现个.git的隐藏文件,使用ls -a可查看
ls -a
添加文件到暂存区,git add + 文件名(单独添加一个文件);git add + .(.表示添加目录下所有文件)
git add .
查看仓库状态
git status
提交更改到仓库
git commit -m "git init V1.0.0"
提交完成后,查看仓库状态
git status
切换到内核下的瑞芯微的设备树文件所在目录下,准备修改相关设备树文件
cd ~/tspi/tspi_linux_sdk/kernel/arch/arm64/boot/dts/rockchip
假设我这里是修改了tspi-rk3566-dsi-v10.dtsi设备树头文件及tspi-rk3566-user-v10-linux.dts设备树源文件来适配MIPI屏的相关内容。
修改完设备树文件后,查看仓库状态
git status
查看修改前后的区别
git diff
将修改保存为补丁文件,也就是抽补丁
git diff > mypatch.patch
把修改后的设备树头文件重新添加到暂存区
git add arch/arm64/boot/dts/rockchip/tspi-rk3566-dsi-v10.dtsi
把修改后的设备树源文件重新添加到暂存区
git add arch/arm64/boot/dts/rockchip/tspi-rk3566-user-v10-linux.dts
提交到仓库
git commit -m "V1.0.1"

git%20%E5%B8%B8%E7%94%A8%E7%9A%84%E4%B8%80%E4%BA%9B%E6%93%8D%E4%BD%9C">二、git 常用的一些操作

查看提交历史
git log
撤销更改
git checkout + 文件名
拉取代码
git pull + 远程仓库名 分支名
推送代码
git push + 远程仓库名 分支名

三、抽补丁

抽补丁
git diff > mypatch.patch

四、打补丁

打补丁
patch -p1 < mypatch.patch

五、补充

以上介绍的是使用git维护源码的一些基本操作,想要深度学习其用法的可以参考以下链接:
https://www.yiibai.com/git

http://www.ppmy.cn/embedded/86878.html

相关文章

新能源汽车的充电网络安全威胁和防护措施

1. 物理攻击&#xff1a;例如恶意破坏、搬走充电设施等&#xff0c;这可能会对充电设施造成损害&#xff0c;妨碍正常的电力传输。 2. 网络攻击&#xff1a; 黑客可能利用系统漏洞攻击网络&#xff0c;破坏设备&#xff0c;并窃取用户的个人信息、支付信息等&#xff1b; 车辆…

OpenJudge | 波兰表达式

总时间限制: 1000ms 内存限制: 65536kB 描述 波兰表达式是一种把运算符前置的算术表达式&#xff0c;例如普通的表达式2 3的波兰表示法为 2 3。波兰表达式的优点是运算符之间不必有优先级关系&#xff0c;也不必用括号改变运算次序&#xff0c;例如(2 3) * 4的波兰表示法为…

ctfshow-web入门-php特性(web147-web150_plus)

目录 1、web147 2、web148 3、web149 4、web150 5、web150_plus 1、web147 ^&#xff1a;匹配字符串的开头。 $&#xff1a;匹配字符串的结尾&#xff0c;确保整个字符串符合规则。 [a-z0-9_]&#xff1a;表示允许小写字母、数字和下划线。 *&#xff1a;匹配零个或多个前面…

iPhone 在 App Store 中推出的 PC 模拟器 UTM SE

PC 模拟器是什么&#xff1f;PC 模拟器是一种软件工具&#xff0c;它模拟不同硬件或操作系统环境&#xff0c;使得用户可以在一台 PC 上运行其他平台的应用程序或操作系统。通过 PC 模拟器&#xff0c;用户可以在 Windows 电脑上体验 Android 应用、在 Mac 电脑上运行 Windows …

Golang 知识结构图

总结Go的入门知识结构&#xff0c;如下图所示&#xff1a;

09 ES6的模块化语法

ECMAScript 6&#xff08;简称ES6&#xff09;是JavaScript语言的下一代标准&#xff0c;其中引入了许多新特性&#xff0c;包括模块化语法。ES6的模块化语法允许开发者将代码分割成独立的模块&#xff0c;每个模块可以包含变量、函数和其他资源&#xff0c;并且可以在不同的文…

Spring RestTemplate:简化HTTP请求的利器

在现代Web开发中&#xff0c;HTTP请求是与外部服务交互的主要方式之一。Spring框架提供的RestTemplate工具&#xff0c;大大简化了HTTP请求的发送和处理过程&#xff0c;让开发者可以更加专注于业务逻辑的实现。本文将带你了解RestTemplate的基本用法及其在实际项目中的配置方法…

android前台服务

关于作者&#xff1a;CSDN内容合伙人、技术专家&#xff0c; 从零开始做日活千万级APP。 专注于分享各领域原创系列文章 &#xff0c;擅长java后端、移动开发、商业变现、人工智能等&#xff0c;希望大家多多支持。 未经允许不得转载 目录 一、导读二、使用2.1 添加权限2.2 新建…