本文主要介绍git-repo仓库管理工具的安装与配置指南。
前提条件
安装git-repo依赖Git,在操作git-repo之前,请确保已经安装了Git。
工具说明
git-repo是一款客户端多仓库管理工具,主要用于管理多个Git仓库的集合,并允许用户直接从客户端发起代码评审。
git-repo并不会改变Git用户的使用习惯,而是提供了对Git命令的扩展。git-repo安装之后,为Git提供了一系列的子命令(git repo, git peer-review, …)。
传统的代码评审工作模式,代码贡献者要将代码推送到个人/特性分支,再通过Web界面发起创建合并请求。整个过程要经历多个步骤,开发者要切换到不同的工具才能完成。
安装 git-repo
下载与安装git-repo
访问下载git-repo,请根据您的平台类型选择(Linux、Mac、或是 Windows),CPU 类型(amd64 或 x86)下载合适的软件包。
如果是Linux或者Mac OS平台,为下载文件设置可执行权限。
$ chmod a+x git-repo
将下载的可执行文件复制到可执行目录。对于Linux和Mac OS平台,这个目录可以是/usr/local/bin 或者其他目录。对于Windows平台,这个目录可能是
C:\Windows\system32
。$ git repo --version
运行git-repo
安装完毕,尝试执行下面命令,注意下面命令中Git和repo之间可以不再需要短线,因为repo命令已经自动注册为Git的一个子命令。
$ git repo --version
运行后,可以查看git-repo帮助。
#git repo或git repo -h都可
$ git repo -h
如果使用 git repo --help
或者 git help repo
,则无法显示 git-repo 的帮助,因为这些命令激活了 Git 的 man 手册,而非 git-repo 内置的帮助系统。
git repo 有很多子命令。可以用如下命令查看子命令的帮助:
$ git repo help sync
配置 git-repo
在用户主目录下的.git-repo/config.yml
文件,可以修改 git-repo 默认设置。如:
verbose: 1 1: 显示 Info 级别日志;2: 显示 Debug 级别数据。
loglevel: warning 设置打印到日志时的日志级别
logrotate:
<size>
日志回滚大小,默认 20MBlogfile:
<file>
设置日志文件名称
软件升级
运行下面命令升级 git-repo:
$ git repo upgrade
从升级服务器自动下载相应平台的git-repo升级包,完成应用的替换和升级。
如果由于文件权限或者其它原因导致升级失败,会给出错误提示。例如:
$ git repo upgrade
Download git-repo: ############################################################ 100%
+--------------------------------------------------------------------------------+
| Fail to upgrade. Please copy |
| /var/folders/5d/21v9l2z12j/T/git-repo-0.2.0-619707833 |
| to |
| /usr/bin/git-repo |
| by hands |
+--------------------------------------------------------------------------------+
Error: upgrade failed
遇到类似上面的错误提示,手工完成文件复制。例如:
sudo cp /var/folders/5d/21v9l2z12j/T/git-repo-0.2.0-619707833 /usr/bin/git-repo
命令格式
git repo upgrade [options...]
选项
主要的选项如下:
--url <URL>
:使用指定的升级服务器地址。默认使用https://github.com/alibaba/git-repo-go/releases
作为升级服务器地址。--test
:升级到测试版本。测试版本是由升级服务器的version.yml的 test 字段定义的。