在一个命令中克隆并维护git存储库的整个层次结构
hierarch的Python项目详细描述
层次结构
Hierarchy是一个简单的工具,它允许您在one single command中克隆和维护Git存储库的整个层次结构:
$ hierarchy
TODO: Add picture of
hierarchy
in action
快速启动
安装
$ pip install hierarchy
创建层次结构文件
$ 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
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=>;跳过并通知用户(错误)
- []是正确的回购协议:
- []没有本地修改,并且最新的远程设置为>;
- []更新(拉)
- []使用所有子模块更新
- []有本地修改=>;跳过并通知用户(警告)
- []不是最新的远程设置=>;跳过并通知用户(警告)
- []没有本地修改,并且最新的远程设置为>;