安装与配置

本文主要介绍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

  1. 访问下载git-repo,请根据您的平台类型选择(Linux、Mac、或是 Windows),CPU 类型(amd64 或 x86)下载合适的软件包。

  2. 如果是Linux或者Mac OS平台,为下载文件设置可执行权限。

    $ chmod a+x git-repo
  3. 将下载的可执行文件复制到可执行目录。对于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>日志回滚大小,默认 20MB

  • logfile:<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 字段定义的。