使用git的语言不可知依赖关系管理器。

gitman的Python项目详细描述


概述

Gitman是一个使用Git的语言无关依赖性管理器。它的目标是作为子模块的替换,并为管理嵌套git存储库的版本提供高级选项。

demo

Unix Build StatusWindows Build StatusCoverage StatusScrutinizer Code QualityPyPI VersionPyPI License

设置

要求

安装

全局安装此工具:

$ pip install gitman

或者将其添加到您的Poetry项目中:

$ poetry add gitman

配置

生成示例配置文件:

$ gitman init

或者在工作树的根目录中手动创建一个(gitman.yml.gitman.yml):

location:vendor/gitmansources:-name:frameworkrepo:https://github.com/kstenerud/iOS-Universal-Frameworkrev:Mk5-end-of-life-name:coveragerepo:https://github.com/jonreid/XcodeCoveragerev:masterlink:Tools/XcodeCoverage-name:trufflehogrepo:https://github.com/dxa4481/truffleHogrev:masterscripts:-chmod a+x truffleHog/truffleHog.py-name:fontawesomerepo:https://github.com/FortAwesome/Font-Awesomesparse_paths:-webfonts/*rev:master-name:material-design-iconsrepo:https://github.com/google/material-design-icons.gitrev:mastergroups:-name:codemembers:-framework-trufflehog-name:resourcesmembers:-fontawesome-material-design-icons

忽略依赖项存储位置:

$ echo vendor/gitman >> .gitignore

用法

查看可用的命令:

$ gitman --help

更新依赖项

获取所有依赖项的最新版本:

$ gitman update

基本上:

  1. <root>/<location>/<name>
  2. 处创建工作树
  3. repo提取并签出指定的rev
  4. <root>/<link>(如果指定)
  5. 对包含配置文件的所有嵌套工作树重复此操作
  6. 记录签出的实际提交sha(使用--lock选项)
  7. 为每个依赖项运行可选的安装后脚本

其中rev可以是:

  • 提交sha的全部或部分:123def
  • 标签:v1.0
  • 分支:master
  • 一个rev-parse日期:'develop@{2015-06-18 10:30:59}'

或者获取某些依赖项甚至依赖组的最新版本:

  • 更新单个存储库
$ gitman update framework
  • 更新依赖项组
$ gitman update resources

恢复以前的版本

显示当前安装的特定版本:

$ gitman list

以后重新安装这些特定版本:

$ gitman install

删除依赖项

删除所有已安装的依赖项:

$ gitman uninstall

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

推荐PyPI第三方库


热门话题
Java泛型重写抽象方法并具有子类的返回类型   Java中的字符串反转字符,同时保留一些字符   java将系统时间与我获取它的时间进行比较   java解析ODATA URL以在准备entityset之前读取ID值   java中的有界通配符下界泛型即使在传递超类时也不会编译   c#Java的JVM和Java的内部工作方式有什么不同。NET的CLR?   java如何在windows7上指定JDK的版本?   Java:列出单个目录中的所有文件(1020000+)   java使用Logback和Lombok   安卓谷歌玩java。lang.NullPointerException   使用RSA的解密结果在普通Java和Android中有所不同   具有默认连接池的java Spring引导   java我如何在一个坏的测试环境中前进?