1 个不稳定版本
使用旧的 Rust 2015
| 0.1.0 | 2017年8月18日 |
|---|
#48 in #organization
18KB
236 行
ghopac - GitHub Organization Pull And Clone
ghopac 是一个实用工具,可以从一个或多个 GitHub 组织中拉取 - 如果本地磁盘上缺失,则克隆 - 你可以访问的所有仓库。如果配置文件中指定了额外的仓库,它也会从这些仓库中 pull,这些仓库不需要属于任何特定的 GitHub 组织。
从源码构建
- 安装 rust(根据你的平台/发行版,你可能需要单独安装 cargo)
- 切换到顶级源目录
- 通过运行以下命令构建二进制文件:
cargo build --release;你的优化二进制文件应该在./target/release/ghopac中 - [可选] 运行
cargo install将ghopac放入你的${HOME}/.cargo/bin目录;如果需要,将其添加到你的PATH
使用方法
-
在 https://github.com/settings/tokens 获取 GitHub 访问令牌;最低访问权限应为读取你的组织和仓库
-
在
${XDG_CONFIG_HOME}/ghopac/config.json创建一个配置文件,以下是一个示例{ "concurrency": 4, "verbose": true, "github_access_token": "<from step 1>", "orgs": [ { "org": "my_github_org", "path": "/my/base/code/dir/for/my_github_org" } ], "syncpoints": [ "/some/other/cloned/repo/dir", "/yet/another/separately/cloned/repo/dir" ] } -
运行
ghopac
配置说明
- 该程序遵循 XDG Base Directory Specification 来查找你的配置文件位置
- 你可以不使用 GitHub 组织,只需省略
orgs,只使用syncpoints - 如果未指定,
concurrency将默认为 4 syncpoints不需要属于任何特定的 GitHub 组织;它们只是你期望git pull正确工作的本地目录- 如果你没有配置文件,运行程序将会失败,并输出一个示例文件以供你开始
待办事项
- 添加命令行参数以覆盖配置文件
- 对于组织,如果所有仓库太多,请添加过滤功能。
- 查看问题列表了解更多...
依赖项
~8–18MB
~287K SLoC