管理项目特定命令的无摩擦方式。
项目描述
1build 是一个自动化工具,可以方便地配置项目本地命令行别名,然后快速轻松地运行命令。当您处理多个项目并一直在它们之间切换时,它特别有用。通常情况下,不同的项目使用不同的构建工具并具有不同的环境要求——然后从一个项目切换到另一个项目变得越来越麻烦。这就是 1build 发挥作用的地方。
使用 1build,您可以为常用的项目命令(如构建、测试、运行或其他任何内容)创建简单且易于记忆的命令别名。这些别名将具有项目本地范围,这意味着它们只能在项目目录中访问。通过这种方式,您可以统一所有项目以使用相同的简单命令进行构建,而不管它们使用什么构建工具。它将消除记住所有这些命令的麻烦,从而提高对真正重要事物的精神关注。
安装
pip install 1build
或者
pip3 install 1build
用法
配置
-
在项目文件夹中创建项目配置文件,名称为
1build.yaml -
1build.yamlJVM Maven 项目的示例:project: Sample JVM Project Name commands: - build: mvn clean package - lint: mvn antrun:run@ktlint-format - test: mvn clean test
为上述示例项目运行 1build:
-
建设项目
1build build -
修复编码指南 lint 并运行测试(一次执行多个命令)
1build lint test
使用before和after命令
考虑您的项目X需要Java 11,而另一个项目需要Java 8. 总是记得切换java版本是一件令人头疼的事情。您想要的是Java 11在构建项目时自动
切换到X,并在构建完成时将其切换回Java 8。另一个例子——项目需要Docker启动并运行,或者您需要在运行测试工具后清理数据库。
这就是before&after命令有用的地方。这些命令都是可选的——您可以使用其中之一,也可以两者都不使用。
例子:
-
切换到
Java 11然后返回Java 8project: Sample JVM Project Name before: ./switch_to_java_11.sh after: ./switch_to_java_8.sh commands: - build: mvn clean package
-
确保
Docker已启动并运行project: Containerized Project before: ./docker_run.sh commands: - build: ./gradlew clean
-
一些命令后清理数据库
project: Containerized Project after: ./clean_database.sh commands: - build: ./gradlew clean
命令用法
usage: 1build [-h] [-l] [-v] [command]
positional arguments:
command Command to run - from `1build.yaml` file
optional arguments:
-h, --help Print this help message
-l, --list Show all available commands - from `1build.yaml` file
-v, --version Show version of 1build and exit
-i, --init Create default `1build.yaml` configuration file
贡献
请阅读CONTRIBUTING.md了解我们的行为准则的详细信息,以及向我们提交拉取请求的流程。
版本控制
我们对所有版本都使用语义版本控制。有关可用版本,请参阅此存储库上的标签。
变更日志
每个版本中对该项目的所有显着更改都将记录在CHANGELOG.md中。
格式基于Keep a Changelog。
执照
该项目在 MIT 许可下获得许可 - 请参阅LICENSE文件了解详细信息
作者
另请参阅参与此项目的贡献者列表。
项目详情
下载文件
下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。