6 个版本 (1 个稳定版本)
1.0.0 | 2023年1月5日 |
---|---|
0.2.1 | 2022年12月30日 |
0.1.2 | 2022年12月7日 |
0.1.0 | 2022年11月29日 |
在 命令行工具 中排名 #2082
每月下载量:21 次
205KB
5K SLoC
projectctl
项目管理 CLI 工具。
入门
- 从二进制文件安装
VERSION=1.0.0
# Linux x64
curl -Lfo /usr/local/bin/projectctl https://github.com/leroyguillaume/projectctl/releases/download/v$VERSION/projectctl-$VERSION-linux-x64
# Linux aarch64
curl -Lfo /usr/local/bin/projectctl https://github.com/leroyguillaume/projectctl/releases/download/v$VERSION/projectctl-$VERSION-linux-aarch64
# MacOS x64
curl -Lfo /usr/local/bin/projectctl https://github.com/leroyguillaume/projectctl/releases/download/v$VERSION/projectctl-$VERSION-macos-x64
# MacOS ARM
curl -Lfo /usr/local/bin/projectctl https://github.com/leroyguillaume/projectctl/releases/download/v$VERSION/projectctl-$VERSION-macos-aarch64
sudo chmod +x /usr/local/bin/projectctl
# Allow projectctl to source environment variables automatically when you're entering into a directory present in ~/.projectctl/allowed-dirs
# If you're using bash
echo 'eval "$(projectctl hook bash)"' >> ~/.bashrc
source ~/.bashrc
# If you're using zsh
echo 'eval "$(projectctl hook zsh)"' >> ~/.zshrc
source ~/.zshrc
- 使用 cargo 安装
cargo install projectctl
# Allow projectctl to source environment variables automatically when you're entering into a directory present in ~/.projectctl/allowed-dirs
# If you're using bash
echo 'eval "$(projectctl hook bash)"' >> ~/.bashrc
source ~/.bashrc
# If you're using zsh
echo 'eval "$(projectctl hook zsh)"' >> ~/.zshrc
source ~/.zshrc
- 从源代码安装
git clone https://github.com/leroyguillaume/projectctl
cargo install --path projectctl
# Allow projectctl to source environment variables automatically when you're entering into a directory present in ~/.projectctl/allowed-dirs
# If you're using bash
echo 'eval "$(projectctl hook bash)"' >> ~/.bashrc
source ~/.bashrc
# If you're using zsh
echo 'eval "$(projectctl hook zsh)"' >> ~/.zshrc
source ~/.zshrc
项目
要使用模板创建新项目,可以使用 new
子命令。
默认情况下,使用 leroyguillaume/projectctl-templates 作为模板存储库。每个目录对应一个模板。如果您想添加一个,请随意发起一个 pull request!您可以使用 --git
选项来覆盖它。
Liquid 被用作模板引擎。每个扩展名为 .liquid
的文件将被渲染。您可以对文件名进行模板化。
projectctl 注入了一些变量
name
其值为项目名称description
其值为项目描述(可以与-d
选项一起设置,默认未设置)env
包含所有环境变量git
包含默认的 git 配置
您也可以定义任何想要的变量,但请注意,您必须在运行命令时通过添加 --values
选项来设置它。
示例
projectctl new rs-lib my-project-name
projectctl new --values '{"repository-url":"https://github.com/username/project-name"}' rs-lib my-project-name
projectctl 自动更新 ~/.projectctl/allowed-dirs
。
当您想删除一个项目时,您可以运行以下命令以确保一切清理干净
projectctl destroy my-project-name
配置文件
当您运行 projectctl env
时,以下配置文件将被加载(从低到高优先级)
projectctl.yml
projectctl.本地.yml
注意,您可以使用选项 -c
(或 --config
)覆盖这些位置。
所有配置文件都必须匹配 此 JSON 架构。
您可以在 这里 找到一些配置示例。
依赖
25–40MB
~768K SLoC