Gerrit+repo管理git仓库,如果本地有新分支不能执行repo sync来同步远程所有修改,会报错

  • 问题:创建一个本地分支TEST 来关联远程已有分支origin/TEST,直接执行repo sync可能会出现问题:比如,本地分支TES会错乱关联到origin/master,或者拉不下最新代码等问题。

    复制代码
    // git checkout -b 新分支名 远程分支名字
    git checkout -b TEST origin/TEST
    # 或(Git 2.23+ 版本推荐)
    git switch -c 新分支名
  • 解决:

    • 执行git branch -avv 查看分支和关联情况
    • 如果没有冲突,执行git pull 可以自动同步所有分支 --实现类似repo sync的效果
    • 如果有冲突,就执行git fetch,只能同步 远程分支到本地的远程分支,不同步本地分支:
      • 例如,remotes/origin/开头的都是本地的远程分支--能同步远程最新修改
      • 不带 remotes/origin/开头的都是本地分支--无法同步远程最新修改
        • 如果需要本地的也同步远程修改,需要解决冲突执行git merge
    • 总结:git pull = git fetch + git merge
相关推荐
Irissgwe1 天前
三、Git 文件状态管理:add、commit、status 和 diff
git
Ws_1 天前
Git + Gerrit 第三课:分支、切换与合并
git·elasticsearch
xlq223221 天前
6.git
git
Drache_long1 天前
Git命令概述
git
console.log('npc')1 天前
修改git中commit内容
git
love8888_cnsd1 天前
Git & Linux 速查表
java·linux·git·后端·elasticsearch
恋喵大鲤鱼2 天前
git checkout
git·git checkout
知识汲取者2 天前
Git撤销操作全解析:revert、undo与drop commit的区别与应用
git
cxxx172 天前
【同步Overleaf, Github】
git·overleaf
染翰2 天前
Linux root用户安装配置Git
linux·git·后端