5 个版本
使用旧 Rust 2015
0.1.4 | 2018年11月22日 |
---|---|
0.1.3 | 2018年9月20日 |
0.1.2 | 2018年9月18日 |
0.1.1 | 2018年9月13日 |
0.1.0 | 2018年9月9日 |
#245 在 #仓库
32KB
687 行(不包括注释)
repos
一个简单的命令行工具,用于管理本地仓库。
说明
-
元数据文件由用户手动管理
本地仓库的元数据应由用户手动管理。`repos` 命令行工具只读取元数据进行操作,永远不会修改它。
请访问 https://github.com/toml-lang/toml 了解 toml 格式的快速介绍。
-
通过启动 vcs 进程来实现 Vcs 支持
目前,`repos` 命令行工具通过调用 vcs 进程来同步仓库。
在使用 `repos` 命令行同步仓库之前,请确保将 vcs 命令行程序放入路径环境。
构建
首先,安装 Rust http://rust-lang.net.cn/install.html。
然后,
cargo build --release
将构建的 target/release/repos
(Windows 中的 target\release\repos.exe
)命令行可执行程序复制到任何位置以供使用。
教程
准备您的元数据文件
参见 Repos.sample.toml
以获取示例。
要使用示例元数据文件,只需将其复制到您仓库的根目录,并将其重命名为 Repos.toml
。
添加一个新的仓库
- 将新的仓库元数据放入
Repos.toml
- 运行
repos sync {repo_url}
更新现有的仓库
运行 repos sync {repo_url}
。
删除现有的仓库
- 运行
repos remove {repo_url}
- 手动从
Repos.toml
中删除仓库元数据
更新所有仓库
运行 repos sync
。
列出某个主题的仓库
运行 repos topic {topic}
。
列出所有主题及其仓库数量
运行 repos topics
。
输出所有仓库的统计数据
运行 repos stats
。
清理未使用的资源
运行 repos cleanup
。
搜索仓库
运行 repos search {keyword}
。
输出代理配置
运行 repos proxy
。
更改代理配置
在元数据文件中编辑 proxy
部分。
元数据
查看 Repos.template.toml
以获取概述。
仓库
url
:遵循 vcs 的用法vcs
:版本控制系统。选择:git, hgallow_sync
:是否同步到本地,或在元数据中仅标记bare
:是否为裸仓库use_proxy
:是否使用代理进行同步topics
:所属的主题
代理
scheme
:选择:http, socks5主机
端口
本地文件和目录
这些文件和目录都在当前/工作目录(pwd
)中。
元数据文件
Repos.toml
仓库目录
{主机}/{path_to_repo}
例如,URL https://example.com/org/repo.git
的仓库目录是 example.com/org/repo
。
子命令
sync
:如果提供了仓库 URL,则更新或克隆,否则同步所有仓库remove
:删除仓库的本地目录topics
:列出所有主题及其仓库计数topic
:列出主题的仓库stats
:输出所有仓库的统计数据cleanup
:清理未使用的资源search
:通过关键字搜索仓库proxy
:输出代理配置
示例
repos sync https://github.com/org/repo.git
repos sync
repos remove https://github.com/org/repo.git
repos topics
repos topic rust
repos stats
repos cleanup
repos search keyword
repos proxy
限制
目前有一些限制。
-
不带基的相对 URL(类似 scp 的语法)不受支持。
例如,
[用户@]主机.xz:路径/to/仓库.git
或[用户@]主机.xz:~/路径/to/仓库.git
-
仓库的
bare
属性仅用于克隆仓库。 -
代理配置是全局的。这可能在将来改变。
-
Vcs 仅支持 git 和 hg(Mercurial)。
依赖关系
~2.3–3MB
~82K SLoC