本文首发地址 http://h89.cn/archives/254.html
最新更新地址 https://gitee.com/chenjim/chenjimblog

repo安装

首先确认电脑是否已经安装 repo ,执行which repo找不到 repo 时需要安装

  1. 下载 repo
    curl https://mirrors.tuna.tsinghua.edu.cn/git/git-repo -o repo && chmod +x repo
  2. 添加 repo 到环境变量
    sudo mv repo /bin/repo 或者 sudo mv repo /usr/bin/repo
  3. repo 的运行过程中,会尝试访问 官方的git源 更新自己,一般情况无法正常更新,
    可以将如下内容复制到你的 ~/.bashrc 里,并重启终端模拟器
    export REPO_URL='https://mirrors.tuna.tsinghua.edu.cn/git/git-repo'

参考自 Git Repo 镜像使用帮助--清华大学:
https://mirrors.tuna.tsinghua.edu.cn/help/git-repo


repo 配置

下面是 Gitee repoABC 得配置

<?xml version="1.0" encoding="UTF-8"?>
    <manifest>
      <remote  name="origin"
               fetch="https://gitee.com/" />
      <default revision="master" remote="origin" />
      <project path="chenjimblog" name="chenjim/chenjimblog" />
      <project path="thirdPartyJniSo" name="chenjim/thirdPartyJniSo" />
      <project path="ProtoBuf" name="chenjim/ProtoBuf" />
      <project path="dir2/JsonParser" name="chenjim/JsonParser" />
      <project path="dir2/SignKeyConvert" name="chenjim/AndroidSignKeyConvert" />
</manifest>

更多可用配置 可以参考Android 9.0.0_r60 的 manifest googlesource 或者 gitee mirror
安卓源码访问可以[ 使用工具 ]()


repo 使用

repo 说明文档参见 repo help,repo 管理 git 项目,对于任意一个被管理的 git 项目,可以使用 git 相关的命令进行版本控制
本文链接 http://h89.cn/archives/254.html

  1. 初始化
    mkdir repoABC && cd repoABC
    repo init -u https://gitee.com/chenjim/repoABC
  2. 同步repo管理的git仓库代码
    repo sync
    可以看到repoABC中配置的仓库已经同步到了当前目录
    repo sync -l 只 checkout 代码,不同步最新代码
  3. repo 分支相关
    • 将远程 master 分支 checkout
      repo forall -c git checkout -b master remotes/origin/master
    • 查看可切换的分支,太多时可以通过 grep 过滤
      cd .repo/manifests && git branch -a
    • 切换到 android14-release 分支
      repo init -b android14-release && repo sync -j4 && repo start android14-release --all
    • 查看切换后的分支
      repo branches
  4. 查看最近 10 提交的状态及分支关系
    git log --oneline --graph --decorate -b android14-release -10
    可以简写 gl -b android14-release -5
    需在 ~/.bashrc 添加 alias gl="git log --oneline --graph --decorate"
  5. 将某个时间段所有仓库修改记录显示出来
    repo forall -c git log --name-status --since="2016-09-13" --until="2017-02-01"
  6. 查看工程中所有仓库的修改状态(包括文件位置)
    repo status

相关文章


本文链接:repo安装使用及项目配置 - https://chenjim.com/archives/254.html

版权声明:原创文章 遵循 CC 4.0 BY-SA 版权协议,转载请附上原文链接和本声明。

标签: Git, repo

评论已关闭