#git-repository #git-clone #git #command-line-tool #version-control #utility #root-directory

bin+lib souko

一个简单的命令行工具,提供了一种方便的方式来组织远程 git 仓库的克隆副本

5 个不稳定版本

0.2.0 2023 年 9 月 17 日
0.1.2 2023 年 9 月 3 日
0.1.1 2023 年 9 月 2 日
0.1.0 2023 年 9 月 2 日
0.0.0 2022 年 8 月 9 日

2750命令行工具 中排名

Download history 4/week @ 2024-03-10 7/week @ 2024-03-17 54/week @ 2024-03-24 5/week @ 2024-03-31

每月 1,166 次下载

MIT/Apache

105KB
2.5K SLoC

souko

Maintenance: actively-developed License: MIT OR Apache-2.0 crates.io docs.rs Rust: ^1.70.0 GitHub Actions: CI Codecov

Souko 是一个简单的命令行工具,提供了一种方便的方式来组织远程 git 仓库的克隆副本。

VS Code 扩展 souko-vscode 也可用。

使用 souko 克隆远程仓库时,souko 会在指定的根目录下创建一个目录(默认为 ~/.local/share/souko/root),包含远程仓库 URL 的主机名和路径。

$ souko clone https://github.com/gifnksm/souko
# => creates local clone at ~/.local/share/souko/root/github.com/gifnksm/souko

您还可以列出所有已克隆的仓库。

$ souko list
# => list of absolute paths of all repositories cloned with souko

通过结合 souko、模糊查找器和 shell 功能,您可以轻松地在仓库之间跳转(待办事项:添加 shell 脚本示例)。

配置

默认情况下,配置是通过位于 ~/.config/souko/config.toml 的 TOML 文件进行的。

[[root]]
name = "default"
path = "~/.local/share/souko/root"

[[root]]
name = "repos"
path = "~/repos"

[query]
default_scheme = "github"

[query.scheme_alias]
gh = "github"
gl = "gitlab"

[query.custom_scheme]
github = "https://github.com/{path}.git"
gitlab = "https://gitlab.com/{path}.git"

安装

有几种安装 souko 的方法。选择最适合您需求的方法之一。

发行版软件包

以下软件包可用

  • Arch Linux (AUR):[souko](https://aur.archlinux.org/packages/souko/) 或 [souko-bin](https://aur.archlinux.org/packages/souko-bin/)

预构建的二进制文件

可执行二进制文件可在 [GitHub 发布页面](https://github.com/gifnksm/souko/releases/) 上下载。

您还可以使用 cargo-binstall 命令安装二进制文件。

# Install pre-built binary
$ cargo binstall souko

使用 Rust 从源代码构建

要从源代码构建 souko 可执行文件,您必须安装 Rust 工具链。要安装 rust 工具链,请遵循此指南

安装 Rust 后,可以使用以下命令构建和安装 souko

# Install released version
$ cargo install souko

# Install latest version
$ cargo install --git https://github.com/gifnksm/souko.git souko

最低支持的 Rust 版本 (MSRV)

最低支持的 Rust 版本是 Rust 1.70.0。在任何时候都支持至少最后一个 3 个稳定 Rust 版本。

当软件包处于预发布状态(0.x.x)时,它可能在补丁版本中提高 MSRV。一旦软件包达到 1.x,任何 MSRV 的提升都将伴随着新的小版本。

许可

本项目受以下任一许可的许可:

由您选择。

贡献

除非您明确声明,否则您有意提交并纳入作品中的任何贡献,根据Apache-2.0许可证的定义,应按照上述方式双许可,不附加任何额外的条款或条件。

参见 CONTRIBUTING.md

依赖项

~26–39MB
~713K SLoC