跳转到主要内容

一个基于Git中组件所在位置的组件管理器。

项目描述

Gitvier是一个用于当您拥有一个容器存储库并且该存储库依赖于许多组件来运行,并且您正在积极工作在这些组件上的CLI "组件管理"工具。因此,它旨在允许用户尝试管理这些组件,允许安装、更新等,并能够在一些/所有组件上运行命令。然而,它与GitMan这样的工具不同,因为它不会明确将依赖项回滚到指定的修订版,除非明确强制执行,例如,如果您在“master”上安装了一个组件,而该组件当前在“develop”分支上,如果您运行“gitvier update”,您不期望该组件被放回“master”,而是可能只是对这个组件(以及所有其他组件)进行一次git pull。我主要构建这个来支持Submitty和我的研究项目。

这大量借鉴了GitMan的概念,GitMan是一个伟大的依赖项管理器,但在“组件管理器”方面不那么有用(因此产生了这个工具)。

依赖项

  • Python 3.5+

  • Git

还有其他吗?

安装

使用Pip安装

pip3 install gitvier

从源码安装

git clone https://github.com/MasterOdin/gitvier
python3 setup.py install

用法

$ gitvier --help
usage: gitvier [-h] [-V] <command> ...

A component manager based where your components live in Git.

positional arguments:
  <command>
    init         Initialize a new gitvier directory

optional arguments:
  -h, --help     show this help message and exit
  -V, --version  show program's version number and exit

Gitvier配置文件

Gitvier通过一个.gitvier.yml配置文件运行,该文件包含我们系统的各个组件。在根级别,您可以指定一个位置(如果省略,默认为当前目录)以及所有组件将存放的位置,以及一个组件列表,该列表包含以下元素

name: <component_name/subfolder where component will be installed to>
repo: <git_url>
rev: <branch or tag or commit hash or branch/tag@timestamp>
commands: <list of bash commands to run after install/update> (optional)

.gitvier.yml文件的一个示例(来自Submitty

location: .
components:
- name: RainbowGrades
  repo: https://github.com/Submitty/RainbowGrades
  rev: master
- name: grading
  repo: https://github.com/Submitty/AutoGrading
  rev: master

项目详情


下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。

源代码分发

gitvier-0.1.1.tar.gz (6.4 kB 查看哈希值)

上传时间 源代码

由以下支持