在一个命令中克隆并维护git存储库的整个层次结构

hierarch的Python项目详细描述


层次结构

TravisPyPI

Hierarchy是一个简单的工具,它允许您在one single command中克隆和维护Git存储库的整个层次结构

$ hierarchy

TODO: Add picture of hierarchy in action

快速启动

  1. 安装

    $ pip install hierarchy
    
  2. 创建层次结构文件

    $ nano ~/.hierarchy
    

    Sample Hierarchy File

    repos:-path:~/Dev/CliToolsurl:git@github.com:FlorianKempenich/Hierarchy.git-path:~/Dev/CliToolsurl:git@github.com:FlorianKempenich/kata.git-path:~/Dev/CliTools/DevOpsurl:git@github.com:FlorianKempenich/ansible-droplet.git-path:~/Dev/HomeAutomationurl:git@github.com:FlorianKempenich/Appdaemon-Test-Framework.gitname:appdaemontestframework
  3. runhierarchy

    $ hierarchy
    

hierarchy文件结构

hierarchy文件表示要克隆和维护的所有git存储库的平面层次结构。

它由项列表组成,在键repos下,每个项代表要克隆的存储库。

repos:-REPO_TO_CLONE_1-REPO_TO_CLONE_2-REPO_TO_CLONE_3

每个存储库都有以下结构:

url:"URLoftheproject.Thesameusedtoclonetherepositorywith`gitclone`"path:"Thelocalpathwheretoclonetherepository.Itcancontain`~`torepresentHOME"name:"OPTIONAL-Anametooverridethedefaultrepositorynamewhencloning"

存储库将在以下位置克隆:path/name
如果未提供name,则将使用存储库名称。

示例hierarchy文件可能如下所示:

repos:-path:~/Dev/CliToolsurl:git@github.com:FlorianKempenich/Hierarchy.git-path:~/Dev/CliToolsurl:git@github.com:FlorianKempenich/kata.git-path:~/Dev/CliTools/DevOpsurl:git@github.com:FlorianKempenich/ansible-droplet.git-path:~/Dev/HomeAutomationurl:git@github.com:FlorianKempenich/Appdaemon-Test-Framework.gitname:appdaemontestframework

选项

  • -f/--file HIERARCHY_FILE

    要使用的层次结构文件。
    默认值:~/.hierarchy

  • -v/--verbose

    启用详细模式

  • --help

    显示帮助


进行中的工作

  • [x]允许~path
  • 中 >如果不存在,则创建目录
  • []克隆所有子模块
  • []如果目录存在而不为空:
    • []不是同一个repo=>;跳过并通知用户(错误)
    • []不是repo=>;跳过并通知用户(错误)
    • []是正确的回购协议:
      • []没有本地修改,并且最新的远程设置为>;
        • []更新(拉)
        • []使用所有子模块更新
      • []有本地修改=>;跳过并通知用户(警告)
      • []不是最新的远程设置=>;跳过并通知用户(警告)

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
如何下载多个。java中的PDF文件   linux Java打开文件,形成实际用户主页~/   java如何在时间线内维护TableView选择?   java Hibernate注释@Where vs@WhereJoinTable   Java读/写访问异常FileNotFoundException(访问被拒绝)   继承在Java中是否可以扩展最后一个类?   Android HttpClient使用java使应用程序崩溃。lang.OutOfMemoryError:pthread_create   java为什么即使我在proguardproject中添加了jar文件,也会出现这种错误。txt?   如果添加JButton,swing Java FocusListener和KeyListener将无法工作   java使用solrj检索json格式的SolrDocument   使用Microsoft Visual Studio代码进行Java编程   java NoClassDefFoundError:org/apache/log4j/Logger   哈希集中包含相等对象的java   java中的参数化构造函数是否需要有一个主体?   java类似于NetBeans不必要的代码检测器   Java实践问题   java Blackberry“[projectname].调试文件丢失”和“I/O错误:找不到程序”jar