目录
使用git工具管理泰山派内核源码目录及抽打补丁简易流程
最近,在做linux开发的过程中入手了一块泰山派RK3566的开发板,在官方提供的各种资料中,关于屏幕等等的设备驱动其修改后的设备树文件有使用补丁的方式提供给开发者。学会这种维护修改方式后会十分便捷,以下介绍下使用git工具及抽打补丁的简易流程。
一、使用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 常用的一些操作
查看提交历史
git log
撤销更改
git checkout + 文件名
拉取代码
git pull + 远程仓库名 分支名
推送代码
git push + 远程仓库名 分支名
三、抽补丁
抽补丁
git diff > mypatch.patch
四、打补丁
打补丁
patch -p1 < mypatch.patch
五、补充
以上介绍的是使用git维护源码的一些基本操作,想要深度学习其用法的可以参考以下链接: https://www.yiibai.com/git