repo常用命令解析(持续更新)

1 同步

1.1 将本地仓库更新到最新状态。它会从远程服务器下载最新的代码,并将本地仓库与之同步。如果本地仓库中已经存在某个项目,repo sync会自动检测本地仓库中该项目的版本,并将其更新到最新状态。

类似于git fetch和git merge命令组合使用。它会更新所有远程分支,并将本地仓库合并到最新状态

repo sync

1.2 将本地仓库的代码与本地manifest文件所列的代码同步。它不会从远程服务器下载最新的代码,而是使用本地的缓存,将本地仓库中各个项目的代码回滚到本地manifest文件中所列出的特定版本或分支。这对于调试、测试或开发时离线工作很有用。

类似于git checkout命令,可以将本地仓库恢复到指定的分支或标签。但与git checkout不同的是,repo sync -l会同时更新所有依赖的存储库,从而确保各个存储库之间的版本兼容性

repo sync -l

1.3 只同步当前分支的代码,并且不下载标签

类似于git fetch --depth=1命令,它只会下载当前分支的最新代码,而不会下载任何标签。这可以减少下载的数据量,提高同步速度

repo sync -c --no-tags

2 初始化

repo init --no-clone-bundle --repo-url https://gitlab.com/firefly-linux/git-repo.git --no-repo-verify -u https://gitlab.com/firefly-linux/manifests.git -b master -m rk356x_linux_release.xml
  • –no-clone-bundle:不要使用预先打包好的Git存储库。在克隆大型存储库时,使用此选项可以节省时间和带宽
  • –repo-url https://gitlab.com/firefly-linux/git-repo.git:这个选项用于指定repo工具自身的URL,即repo工具的下载地址
  • –no-repo-verify:这个选项告诉repo不要验证repo工具的签名。如果您相信从指定的repo URL下载的repo工具是可信的,则可以使用此选项加快初始化过程
  • -u https://gitlab.com/firefly-linux/manifests.git:这个选项用于指定Android源码清单的URL,即清单文件所在的Git存储库的地址
  • -b master:这个选项用于指定要初始化的分支,这里是master分支
  • -m rk356x_linux_release.xml:这个选项用于指定要使用的清单文件,这里是rk356x_linux_release.xml

你可能感兴趣的:(程序员常用工具,linux,运维,android,github,manifest,repo)