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