git-repo
回购在 Golang 和许多其他人中重新实现
git-repo
是repo
在Golang并与许多其他功能实现了。使用git-repo
,开发人员可以直接从客户端创建代码审查(拉取请求)。不会有分叉,没有功能分支,也不需要写权限。
git-repo
是一个命令行工具,它为git添加了更多的子命令,适用于像Gerrit、Alibaba.com的agit-flow和其他agit-flow类似协议的集中git工作流......
安装
git-repo
从此存储库下载或编译 的二进制文件,并将 的可执行文件安装(复制)git-repo
到适当的位置,例如/usr/bin
Linux 和 MacOS 以及C:\Windows\system32
Windows的可执行文件。
安装完成后,执行以下命令验证安装:
git repo version
从 git-repo 安装的 Git 别名
git-repo
为用户安装一些有用的 git 配置,一些独特的别名命令是:
git peer-review => git repo upload --single git pr => git repo upload --single git download => git repo download --single
单一存储库模式
直接从客户端创建代码审查
- 克隆一个仓库
git clone https://codeup.teambition.com/gotgit/demo.git
创建本地分支(可选)
git checkout -b some/topic origin/master
- 在工作树中创建提交...
- 从命令行创建代码审查:
git pr
git pr(或git peer-review,或git review)有很多选项,请查看手册:
git repo upload --help
将代码审查下载到本地存储库进行审查
运行后将创建新的代码审查(拉取请求)或刷新旧的代码审查git pr
。每个代码审查都有一个唯一的编号,例如 pull request #123。
审稿人可以使用命令下载它
git download 123
,并在本地工作树中进行代码审查。
更新代码审查
作者的重复命令将更新代码审查:
git pr
如果审查者想要更新代码审查,他或她可以运行:
git pr --change 123
(假设123是代码审查ID,审查者刚刚下载)
多个存储库
git-repo
支持android风格的多仓库管理。
- 从清单项目初始化工作区。
git repo init <manifest-url>
克隆/更新清单存储库中引用的所有存储库。
git repo sync
在所有存储库上创建一个本地工作分支而不是分离的 HEAD。
git repo start --all some/topic
将更改发送到远程服务器以创建代码审查。
git repo upload