首页 > 编程知识 正文

yum repolist,现场repo什么意思

时间:2023-05-04 21:31:27 阅读:57735 作者:1985

目录目录1.repo概述2.repo使用步骤3.repo常用命令3.1 repo init 3.2 repo sync 3.3 repo start 3.4 repo check out 3.5 repo branch 3.6 repo diff 3.7 re postage 3.8 repo on 3.10 repo status 3.11 repo for all 3.12 repo remote 3.13 repo push 3.14 repo grep 3.15 repo manifest 3.16 repo版本3.17 repo info po upoupload 3.19 repo 一. repo介绍 repo是分布式版本控制系统Git中某些命令的封装,是命令行工具。 可以管理多个git项目。 例如,在Android 4.2中,它包含329个项目,每个项目都是独立的git仓库。 也就是说,如果要为feature开发创建分支,则必须为每个子项目创建相应的分支。 显然,git不能手动用于每个子项目以创建分支,而是必须以自动化方式处理。 这些自动化处理由repo工具完成,这也是repo出现的原因之一)。 对于所有由repo管理的项目(如myrepoproject ),myrepoproject/.repo是repo的目录,而myrepoproject/的. repo以外的内容是repo工作目录 repo工具分为两个部分: repo引导脚本和repo代码。 repo引导脚本包含repo代码的地址,repo init -u URL [OPTIONS] (例如repo init-u http://Gerrit.allwinnertech.com :8088 ) 酷酷的高跟鞋repo init命令repo工具的每个命令都在一个python脚本中定义,每次运行命令时,都会在repo引导中找到并运行相应的命令。 这里有概念。 库存存储库,简称库存存储库。 伴随着另一个名词——列表文件。 清单存储库可以包含多个清单文件和分支。 每个清单文件和分支都有相应的版本,清单文件以xml格式组织。 举个例子: 远程元素。 定义了名为t的名称xxxxx

的远程仓库,库的基地址为git://gerrit。

rebase origin/branch] 针对当前分支的跟踪分支执行rebase操作 举例:$repo sync 3.3 repo start 命令格式: $ repo start <newbranchname> [--all | < project >...]说明: 刚克隆下来的代码是没有分支的,repo start实际上是对git checkout -b命令的封装。为指定的项目或所有项目(若使用--all参数),以清单文件中设定的分支为基础,创建特性分支。这条指令与git checkout -b是有区别的,git checkout -b 是在当前所在的分支基础上创建特性分支,而repo start是在清单文件设定分支的基础上创建特性分支举例:$repo start stable platform/build platform/bionic (假设清单文件中设定的分支是gingerbread-exdroid-stable,那么执行以上指令就是对platform/build、platform/bionic项目,在gingerbread-exdroid-stable的基础上创建特性分支stable) 3.4 repo checkout 命令格式:$ repo checkout < branchname > [< project >...]说明:此命令实际上是对git checkout命令的封装,但不能带-b参数,所以不能用此命令来创建特性分支;只能用来切换分支举例:$repo checkout crane-dev (在清单文件中的设定分支的基础上切换到crane-dev分支) 3.5 repo branch 命令格式: $ repo branch [< project >...]说明: 此命令是用来查看分支的举例: $repo branch 或 $repo branch platform/build 3.6 repo diff 命令格式:$repo diff [< project >...]说明:实际上是对git diff命令的封装,用于显示各个项目工作区下的文件差异举例:$repo diff product/酷炫的高跟鞋/docs 查看docs下面工作区中文件的改变 3.7 repo stage 命令格式:$repo stage -i [< project >...]说明:实际上是对git add --interactive命令的封装,用于挑选各个项目工作区中的改动以加入暂存区,其中 -i 代表git add --interactive命令中的--interactive,给出界面供用户选择使用举例:$repo stage -i product/酷炫的高跟鞋/docs 3.8 repo prune 命令格式:$repo prune [< project >...]说明:它是对git branch -d命令的封装,该命令用于扫描项目的各个分支,并删除已经向上游服务器合并的分支 3.9 repo abandon 命令格式:$repo abandon < branchname > [ < project >...]说明:它是对git branch -D命令的封装举例:$repo abandon stable 3.10 repo status

命令格式:$repo status [< project >...]

查看文件状态。同时显示暂存区的状态和本地文件修改的状态

举例:$repo status product/酷炫的高跟鞋/docs 显示如下:

以上的实例输出显示了product/docs项目分支的修改状态

每个小节的首行显示项目名称,以及所在分支的名称

第一个字母表示暂存区的文件修改状态

-:没有改变A:添加(不在HEAD中,在暂存区中)M:修改(在HEAD中,在暂存区中,内容不同)D:删除(在HEAD中,不在暂存区)R:重命名(不在HEAD中,在暂存区,C:拷贝(不在HEAD中,在暂存区,从其他文件拷贝)路径修改)T:文件状态改变(在HEAD中,在暂存区,内容相同)U:未合并,需要冲突解决

第二个字母表示工作区文件的更改状态

-:新/未知(不在暂存区,在工作区)m:修改(在暂存区,在工作区,被修改)d:删除(在暂存区,不在工作区)

两个表示状态的字母后面,显示文件名信息。如果有文件重名还会显示改变前后的文件名及文件的相似度

3.11 repo forall 命令格式:$repo forall [< project >...] -c <command>说明:迭代器,可以在所有指定的项目中执行同一个shell命令举例:$repo forall product/酷炫的高跟鞋/docs product/酷炫的高跟鞋/tools -c ls 显示product/酷炫的高跟鞋/docs和product/酷炫的高跟鞋/tools项目下的文件
   $repo forall -c 'echo $REPO_PROJECT' 显示清单文件中的所有项目选项: -c:后面所带的参数是shell指令-p:在shell指令输出之前列出项目名称-v:列出执行shell指令输出的错误信息 额外的环境变量: REPO_PROJECT:指定项目的名称REPO_PATH:指定项目在工作区的相对路径REPO_REMOTE:指定项目远程仓库的名称REPO_LREV:指定项目最后一次提交服务器仓库对应的哈希值REPO_RREV:指定项目在克隆时的指定分支,manifest里的revision属性
另外,如果-c后面所带的shell指令中有上述环境变量,则需要用单引号把shell指令括起来。 3.12 repo remote 命令格式:$repo remote add < remotename > < url [< project >…]说明:根据xml文件添加远程仓库备注:如果没有repo remote命令,可以使用下面设置远程仓库 命令格式:$repo forall -c 'git remote add 仓库名 url/$REPO_PROJECT.git'说明:为各个项目设置远程仓库举例:$ repo forall -c 'git remote add 酷炫的高跟鞋 http: //gerrit.allwinnertech.com:8081/$REPO_PROJECT.git' 3.13 repo push 命令格式:$repo push < remotename >说明:把当前所在的分支推送到远程仓库备注:如果未有此命令,可使用git相关命令推送到远程库 3.14 repo grep 命令格式:$repo grep说明:相当于对git grep的封装,用于在项目文件中进行内容查找举例:$repo grep *file product/酷炫的高跟鞋/docs 3.15 repo manifest 命令格式:$repo manifest说明:显示manifest文件内容举例:$repo manifest 3.16 repo version 命令格式:$repo version说明:显示repo的版本号举例:$repo version 3.17 repo info 命令格式:$repo info说明:显示清单文件中各个项目的有关信息,如项目所在路径等举例:$repo info 3.18 repo upload 命令格式:$repo upload [--re --cc] {[<project>]… | --replace <project>}说明:相当于git push,但是又有很大的不同。它不是将版本库改动推送到克隆时的远程服务器,而是推送到代码审核服务器(Gerrit软件架设)的特殊引用上,使用SSH协议。代码审核服务器会对推送的提交进行特殊处理,将新的提交显示为一个待审核的修改集,并进入代码审查流程,只有当审核通过后,才会合并到官方正式的 版本库中。选项: -h: --help:显示帮助信息-t:发送本地分支名称到Gerrit代码审核服务器–replace:发送此分支的更新补丁集–re=REVIEWERS:要求指定的人员进行审核-cc=CC:同时发送通知到如下邮件地址 3.19 repo download 命令格式:$repo download {project change [patchset]}…说明:主要用于代码审核者下载和评估贡献者提交的修订 3.20 repo selfupdate 命令格式:$repo selfupdate说明:用于repo自身的更新 3.21 repo help 命令格式:repo help (--all)说明:查看所有命令的帮助信息

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。