01-设置git的用户名和邮箱
git config --global user.name "suwenhao"git config --global user.email "[email protected]"
这里不设置的话后面在第5步的repo配置中还是会要求输入,而且以后进行相关操作都要输入,不妨现在就进行配置。
02-进入home/book目录
03-下载Git 仓库的管理工具repo
git clone https://e.coding.net/codebug8/repo.git
repo 是一个用于管理多个 Git 仓库的工具,它通常用于处理复杂的项目,比如 Android 源代码的管理。由于大型项目可能由多个子项目组成,每个子项目可能有自己的 Git 仓库,手动管理这些仓库会变得复杂。repo 工具通过提供一层额外的抽象,简化了对多个 Git 仓库的同步、更新和操作。
04-创建目录并进入目录
mkdir-p 100ask_imx6ull-sdk &&cd 100ask_imx6ull-sdk
05-初始化repo配置
../repo/repo init -u https://gitee.com/weidongshan/manifests.git -b linux-sdk -m imx6ull/100ask_imx6ull_linux4.9.88_release.xml --no-repo-verify
能不能详细解释下Ubuntu命令:
../repo/repo init -u https://gitee.com/weidongshan/manifests.git -b linux-sdk -m imx6ull/100ask_imx6ull_linux4.9.88_release.xml --no-repo-verify
答:
这个命令是在 Ubuntu 系统中使用
repo
工具初始化一个仓库,具体是初始化一个多 Git 仓库的项目。命令的每个部分都有不同的功能,下面我将详细解释每个参数的意义。
../repo/repo init -u https://gitee.com/weidongshan/manifests.git -b linux-sdk -m imx6ull/100ask_imx6ull_linux4.9.88_release.xml --no-repo-verify
1.
../repo/repo init
这个部分是运行
repo
命令。
repo
是一个工具,用于管理多个 Git 仓库,它通常用于 Android 等大型项目。
repo init
用来初始化一个新的
repo
工作区,或者将一个现有的
repo
工作区与特定的
manifest
文件进行关联。
../repo/repo
:这里使用的是相对路径,指向repo
工具的位置。repo
工具可能位于当前目录的上级目录的repo
子目录下。
2.
-u https://gitee.com/weidongshan/manifests.git
这个参数指定了
repo
配置文件(即
manifest
文件)的 Git 仓库 URL。
manifest
是一个 XML 文件,用于描述如何管理多个 Git 仓库,它包含了所有需要同步的 Git 仓库的信息,比如仓库的 URL 和所需的分支等。
https://gitee.com/weidongshan/manifests.git
:这是manifest
仓库的 URL。这里使用的是 Gitee 上的仓库,表示你要从这个 URL 上获取manifest
文件。
3.
-b linux-sdk
这个参数指定了要拉取的
branch
(分支)。在
repo
中,每个
manifest
文件都可能有多个分支,通常这些分支与不同的开发版本、配置或平台相关。
linux-sdk
:这个是你想要拉取的manifest
分支。通常,linux-sdk
可能代表与 Linux SDK(软件开发工具包)相关的配置。
4.
-m imx6ull/100ask_imx6ull_linux4.9.88_release.xml
这个参数指定了要使用的
manifest
文件。
manifest
文件是一个 XML 文件,包含了多个 Git 仓库的 URL、版本和其他配置。你可以通过
-m
参数指定
manifest
文件的路径。
imx6ull/100ask_imx6ull_linux4.9.88_release.xml
:这个是manifest
文件的路径。imx6ull
是可能与i.MX6ULL
处理器相关的项目,100ask_imx6ull_linux4.9.88_release.xml
则是特定版本的manifest
文件,可能是针对i.MX6ULL
处理器的 Linux 4.9.88 版本的配置。
5.
--no-repo-verify
这个参数禁用了对
repo
工具的验证步骤。在
repo
初始化期间,默认会检查并验证
repo
工具的完整性或版本。通过添加
--no-repo-verify
,可以跳过这个验证过程,通常用于在你确定
repo
工具没有问题的情况下加速初始化过程。
总结:
完整的命令
../repo/repo init -u https://gitee.com/weidongshan/manifests.git -b linux-sdk -m imx6ull/100ask_imx6ull_linux4.9.88_release.xml --no-repo-verify
做了以下几件事:
- 使用
repo
工具初始化一个新的仓库工作区。 - 从
https://gitee.com/weidongshan/manifests.git
获取manifest
配置文件。 - 使用
linux-sdk
分支的manifest
文件。 - 选择
imx6ull/100ask_imx6ull_linux4.9.88_release.xml
作为具体的manifest
文件配置。 - 跳过对
repo
工具的完整性验证,直接进行初始化。
这通常用于设置一个针对
i.MX6ULL
平台的 Linux 开发环境。
结合下面的图理解一下吧:
理解了以上的代码,以后就可以灵活改变参数来获得别的BSP了。
如果第0步的名字执行上面的命令时会要求填入你的名字和邮箱,如下图所示:
名字:suwenhao
邮箱 :2487872782@qq.com
接下来是否希望启用彩色输出?
Testing colorized output":这是在测试是否启用彩色输出(也就是命令行输出中使用颜色来区分不同的内容)。例如,repo status 或 repo diff 命令的输出可能会显示彩色,使得不同的文件状态或更改更加明显。
彩色输出通常用于增强可读性。例如,绿色可以表示文件没有问题(已提交或未修改),红色可能表示文件有冲突或错误,黄色表示警告,等等。
从上面来看,我的终端没有彩色输出的能力,那就选N呗。
从上面的图片来看,repo这样才被配置好了。
06-下载BSP包
执行下面的命令:
../repo/repo sync-j4
这句命令是用
repo
工具同步项目的源码,它的具体含义如下:
../repo/repo sync-j4
逐部分解释
- **
../repo/repo
**:- 这是运行repo
工具的命令,路径指向repo
可执行文件。../repo/repo
表示repo
工具位于当前目录的上一级目录的repo
子目录中。 - **
sync
**:-repo sync
是用来同步代码的命令。- 它会根据manifest
文件中定义的仓库配置,从远程仓库(通常是多个 Git 仓库)拉取代码到本地,并将工作区的代码更新到指定的分支或标签。 - **
-j4
**:--j
参数表示同步时使用的并行线程数。--j4
意味着同时使用 4 个线程并行下载代码,这可以提高下载速度,尤其是在项目包含许多子仓库时。- 根据你的网络带宽和系统资源,可以调整这个数字。通常,设置为系统 CPU 核心数量是一个较好的选择,比如-j$(nproc)
会自动根据可用 CPU 核心数选择线程数。
这句命令是用
repo
工具同步项目的源码,它的具体含义如下:
../repo/repo sync-j4
逐部分解释
- **
../repo/repo
**:- 这是运行repo
工具的命令,路径指向repo
可执行文件。../repo/repo
表示repo
工具位于当前目录的上一级目录的repo
子目录中。 - **
sync
**:-repo sync
是用来同步代码的命令。- 它会根据manifest
文件中定义的仓库配置,从远程仓库(通常是多个 Git 仓库)拉取代码到本地,并将工作区的代码更新到指定的分支或标签。 - **
-j4
**:--j
参数表示同步时使用的并行线程数。--j4
意味着同时使用 4 个线程并行下载代码,这可以提高下载速度,尤其是在项目包含许多子仓库时。- 根据你的网络带宽和系统资源,可以调整这个数字。通常,设置为系统 CPU 核心数量是一个较好的选择,比如-j$(nproc)
会自动根据可用 CPU 核心数选择线程数。
整体作用
该命令的作用是:
- 同步代码:从远程仓库下载和更新本地代码。
- 使用 4 个并行线程:加速同步过程。
在执行该命令之前,需要先运行
repo init
初始化工作区,因为
repo sync
会依赖
.repo/manifest.xml
文件中定义的仓库信息。
运行完之后如下图所示:
07-顺便把Linux-4.9.88的源码压缩传到Windows中,方便以后学习和工作之用
这个压缩操作在Ubuntu的图形界面右键就可以操作,这里就不给命令了。
传到百度网盘了,百度网盘下载链接:
https://pan.baidu.com/s/1lOmiubmL5vsyWtgkT08uZg?pwd=yh34
版权归原作者 昊虹AI笔记 所有, 如有侵权,请联系我们删除。