repo操作导致代码消失一例解决方法

2025-07-03 21:15:01

1、最近整理了下代码后准备提交,进行了git add和git commit操作后,害怕服务器上的代码又更新了,就repo sync了一下,再git log,发现刚才的commit没有了,之前在repo init时也有使用-m参数指定使用相应的mainfest.xml文件,也使用过repo status查看过相应的branch情况,但最终还是没有相应的commit log信息,头痛啊,一周的工作就要白费了吗?不甘心啊,不停的使用git branch -a和git checkout来切换分支,还是没有相应的提交,不可能所有的分支都没有吧?于是上网查找了下,发现刚才commit时有可能是在(no branch)上进行操作的,使用git reflog就可以查看到刚才的提交信息了,接下来再使用git checkout切换到相应的分支,然后再使用git merge命令将刚才reflog看到的相应commit合并过来,再push下就可以了。

2、总的步骤如下:git refloggit checkout ourbranchgit merge commitIDgit push

3、就这样,把我一周的工作找回来了,再进行了一遍repo init和repo sync操作,发现默认是在(no branch)上的,即执行git branch -a时有如下返回:* (no branch)remotes/origin/masterremotes/origin/pre-releaseremotes/origin/releaseremotes/origin/top终于把问题型清楚了,切记以后使用repo时要切换分支啊,没想到首次使用repo来管理提交代码就碰到这么严重问题,还好放松后好好想了一下和查查资料,避免一周工作白费,还有一点以后使用新工具时还要记得备份,避免在紧急情况下找不到解决方法时应急啊。

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢