嵌入式 linux Git常用命令 抽补丁 打补丁

Git常用命令

为什么要学习git呢?我相信刚入门的小伙伴敲打肯定碰到过这种玄学问题,我明明刚刚还能用的代码,后面不知道咋的就不能用了,所以每次你调出一个功能点以后都会手动复制一份代码防止出问题,时间一长发现整个目录全是你复制的乱七八糟的版本头大炸了,Git工具完美的解决了这些问题。这里简单的列出几个git优点。

1. 解决代码管理混乱的问题:

在开发中,我们常常需要调整代码或尝试新功能。如果不小心改坏了代码,可能会导致项目无法运行。如果每次都手动备份代码,文件夹会很快变得杂乱不堪。Git 通过强大的版本控制能力,帮助你保存每次修改,随时回退到以前的状态,让开发更加放心。

2. 提高团队协作效率:

多人协作开发时,代码冲突是不可避免的。如果没有工具管理版本和冲突,项目进度会被严重拖慢。Git 提供了高效的分支合并机制,能清晰地展示每位成员的修改,帮助团队快速解决冲突并同步代码。

3. 支持远程工作:

Git 与远程仓库(如 GitHub、GitLab 等)无缝集成,支持跨地域的多人协作,即使团队成员分布在不同的城市,也能高效合作。

步骤1:安装 Git

bash 复制代码
sudo apt update
sudo apt install git

步骤2:配置 Git

在使用 Git 之前,需要配置用户名和电子邮件地址(如果不提交远程可以随便配置):

在终端中,运行以下命令来设置你的用户名:

bash 复制代码
git config --global user.name "你的用户名"

运行以下命令来设置你的电子邮件地址:

bash 复制代码
git config --global user.email "你的电子邮件地址"

步骤3:创建和克隆仓库

在终端中,进入要创建仓库的目录或选择要克隆仓库的目录。

创建一个新的本地 Git 仓库:

bash 复制代码
git init

克隆一个远程 Git 仓库(如果已存在):

bash 复制代码
git clone 远程仓库的 URL

步骤4:常用 Git 命令

查看仓库状态:

bash 复制代码
git status

添加文件到暂存区:

bash 复制代码
git add 文件名

提交更改到仓库:

bash 复制代码
git commit -m "提交信息"

查看提交历史:

bash 复制代码
git log

创建新分支:

bash 复制代码
git branch 分支名

切换到分支:

bash 复制代码
git checkout 分支名

步骤5:推送和拉取代码

推送和拉取代码是与远程仓库进行交互的关键操作。

推送代码:

bash 复制代码
git push 远程仓库名 分支名

拉取代码:

bash 复制代码
git pull 远程仓库名 分支名

步骤6:撤销更改

有时你可能需要撤销之前的更改或回退到之前的版本。

撤销对文件的修改:

bash 复制代码
git checkout 文件名

补丁

之前我们学习梁山派等单片机的时候,给其他人分享代码都是整个工程直接复制的,包括我们提供的案例也是基本一个功能对应一个工程,但Linux和Android的SDK是非常庞大的如果我们给其他人分享代码也是通过拷贝SDK那真的要累死个球。在本次训练营中我们后面给大家分享特定功能代码的时候也会通过补丁方式提供。

抽补丁

创建一个新的本地 Git 仓库:

bash 复制代码
git init

添加文件到暂存区:

bash 复制代码
git add 文件名

提交更改到仓库:

bash 复制代码
git commit -m "提交信息"

抽补丁:

bash 复制代码
git diff > my_patch_name.patch

打补丁

bash 复制代码
patch < my_patch_name.patch
相关推荐
EVERSPIN4 小时前
基于灵动MM32F0140国产32位单片机的Mini-LED应用
单片机·嵌入式硬件·32位单片机·国产32位单片机
张火火isgudi4 小时前
fedora43 安装 nvidia 驱动以及开启视频编解码硬件加速
linux·运维·视频编解码·nvidia
IT19955 小时前
Qt笔记-使用SSH2进行远程连接linux服务器并上传文件
linux·服务器·笔记
XXYBMOOO5 小时前
内核驱动开发与用户级驱动开发:深度对比与应用场景解析
linux·c++·驱动开发·嵌入式硬件·fpga开发·硬件工程
whlqjn_12115 小时前
ubuntu启动失败报error: the initrd is too big错误
ubuntu
lengjingzju6 小时前
一网打尽Linux IPC(三):System V IPC
linux·服务器·c语言
大聪明-PLUS6 小时前
如何编写你的第一个 Linux 内核模块
linux·嵌入式·arm·smarc
wdfk_prog6 小时前
Git实战指南:如何从另一个分支同步文件时完整保留Commit提交历史
git
In_life 在生活6 小时前
GIT stash 命令的使用
git
知识分享小能手7 小时前
Ubuntu入门学习教程,从入门到精通,Ubuntu 22.04文件压缩与解压缩知识点详解(12)
linux·学习·ubuntu