6 个版本
0.3.2 | 2020 年 5 月 3 日 |
---|---|
0.3.1 | 2020 年 1 月 25 日 |
0.2.1 | 2020 年 1 月 7 日 |
0.1.1 | 2019 年 8 月 20 日 |
在 命令行工具 中排名第 2949
9.5MB
896 行(不包括注释)
Git Governance
一个用于管理多个 git 仓库的工具。该工具的目的不是替代 git,而是尝试减少同时管理多个 git 仓库的工作量。关于这个工具背后的故事,请参阅这篇博客 -> https://medium.com/@jpninanjohn/we-built-a-tool-in-rust-9c1bcb9b655e
安装
使用 Brew
brew tap thecasualcoder/stable
brew install gg
从源代码安装
git clone https://github.com/thecasualcoder/gg.git
cd gg
cargo install --path .
注意:建议的 rustc/cargo 版本:1.36.0 及以上或 1.37.0-nightly 及以上
用法
帮助
$ gg --help
状态
显示当前目录中所有 git 仓库的状态。也会遍历目录内部。要遍历隐藏目录,请使用 -i
标志。默认情况下,不会遍历隐藏目录。
$ gg status
创建
根据指定的本地路径创建远程仓库并将其克隆到本地。远程仓库基于提供的 GITHUB_TOKEN 创建。GITHUB_TOKEN 可以作为环境变量传递,也可以通过 -t
标志传递
$ gg create -r <repo_name> -l <local_path>
抓取
从当前目录开始的所有 git 仓库中抓取。也会遍历目录内部。目前抓取只使用私钥 id_rsa
进行身份验证,如果没有足够的私钥将无法抓取。抓取一个仓库失败不会影响其他仓库。要遍历隐藏目录,请使用 -
标志。默认情况下,不会遍历隐藏目录。
$ gg fetch
克隆
根据传递的标志和 .ggConf.yaml
文件中给出的配置克隆仓库。
$ gg clone -r <remote_url_1> -r <remote_url_2> -l <local_path>
配置文件
可以通过 -
标志指定配置文件。默认情况下,它尝试找到 .ggConf.yaml
。示例配置文件
skipDirectories:
- ignore
cloneRepos:
- remoteURL: https://github.com/golang/net.git
localPath: here/net
- remoteURL: https://github.com/golang/net.git
localPath: there/net
ssh:
privateKey: '/home/ninan/.ssh/gg'
username: 'git'
ssh_agent: false
请参阅 .ggConf.example.yaml
了解更多详情
贡献
请参考 GitHub 项目板 如果您想要一些功能,请创建一个 issue,如果可能的话,也请自由地提交 PR。
依赖项
~29–41MB
~765K SLoC