【20180410】python--repo:主体main.py学习

本文详细解析了Python repo命令的执行流程,重点介绍了main.py的角色,它作为总调度器,负责参数解析和command对象调用。文章讨论了_Repo类、all_commands数组和XmlManifest类的数据结构,以及参数解析的四个层次,强调了_Repo类和all_commands在main.py中的核心作用,同时提及XmlManifest在执行过程中的重要性。
摘要由CSDN通过智能技术生成

1.概述:

main.py是repo命令执行的第二站,在入口脚本repo文件完成检验和初始化执行环境后,即将repo命令参数传递给main.py进行详细的参数解析和repo command对应对象调用运行。即是说main.py起到总调度的作用,根据repo命令参数判断需要调用哪个command对象并完成对象创建和属性赋值,最后运行command对象的execute方法执行repo command。

2.数据结构:

main.py中用到了三种较复杂且重要的数据结构,分别为_Repo类、all_commands对象数组、XmlManifest类;其中_Repo类是在main.py内部声明,后两者是import的外部包内容;另外还继续用到之前的关键变量 repodir(.repo)。

本文中主要分析_Repo类的使用,all_commands和XmlManifest在后续的subcmds学习部分和manifest_xml.py学习部分会单独分析。

3.主体思路:

__main__ -->

_Main(sys.args[1:]) -->

optparse.OptionParser.parse_

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值