我有本地项目,这是一个git存储库。我已将此本地项目添加到Android清单文件中。每当我的本地存储库中有新的提交时,我就可以使用repo sync -n <local project>
获取本地项目。但是,当我尝试使用repo sync -l <local project>
更新工作目录时出现错误
error.GitError:尝试rev-list('^ 0f4e601043d095c8920dad010e5814ef22a20f45','HEAD',' - '):致命:坏对象0f4e601043d095c8920dad010e5814ef22a20f45
任何人都可以提供解决此问题的指针。
答案 0 :(得分:0)
我今天早些时候遇到过这个问题 - 我找不到坏的对象,但似乎是因为在将所有项目置于无头状态后进行回购自我更新。手动检查主人并对所有子项目进行拉动解决了它。
如果你真的很懒并且有很多项目,那么以下bash命令可能会让生活更轻松:
for i in `ls -d */`; do cd $i; git checkout master; git pull origin master; cd ..; done;
注意:此命令假定:
制作一个更聪明的脚本(递归,寻找.git目录等)可能并不难。