repo sync出现contains uncommitted changes错误解决办法

本文详细解析了在使用reposync时遇到containsuncommittedchanges错误的原因及解决步骤,包括如何回退本地代码至未变化状态,解决分支冲突,以及通过gitstash和gitclean命令清除变化记录。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

repo sync出现contains uncommitted changes错误解决办法

 

 

出现这个问题的原因是本地代码发生变化,但未commit.

总思路:

将本地代码回退发生变化之前,然后重新拉取远程仓库代码。

解决:

  1. 进入发生 contains uncommitted changes 的路径下
  2. 使用git status 查看commit

# Your branch and 'origin/msm8937_o1' have diverged,

# and have 1 and 4 different commit(s) each, respectively.

说明存在分支冲突,

  1. git cherry origin/msm8937_o1 查看哪个commit 冲突
  2. 使用git reset –hard <commit ID>恢复所有变化的文件。可以多回退几个。
  3. 回到根目录,repo sync

 

以下为其他网友的解决方式:

1)repo forall -c "git reset --hard && git clean -fd && git pull"//全部回退一个版本,重新pull 不建议。

使用git reset --hard 回退到commit未发生变化之前

git clean --fd 清除变化的文件,删除变化记录目录

git pull 重新pull代码

参考:https://blog.youkuaiyun.com/u012637313/article/details/48028161

2)试着通过 git reset --hard来恢复所有变化的文件之后,依然存在上述问题,

最后通过cd .repo/manifests 切换到 .repo/manifests目录下执行git stash命令,并通过git clean -f -d命令删除变化记录目录,然后使用repo sync就可以通过了。

参考:https://blog.youkuaiyun.com/rig622/article/details/8027182

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值