首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >/usr/lib/git- /home/mathieu/dummy/.git/rebase-merge/rewritten: /git-rebase: 590:无法打开核心没有这样的文件

/usr/lib/git- /home/mathieu/dummy/.git/rebase-merge/rewritten: /git-rebase: 590:无法打开核心没有这样的文件
EN

Stack Overflow用户
提问于 2011-03-22 23:38:49
回答 1查看 134关注 0票数 1

我尝试将我的本地分支(称为' local ')重新设置为master。下面是我所做的:

代码语言:javascript
复制
$ git checkout local
$ git rebase -s ours master
First, rewinding head to replay your work on top of it...
...
Already applied: 0017 smore more work
/usr/lib/git-core/git-rebase: 590: cannot open /home/mathieu/dummy/.git/rebase-merge/rewritten: No such file
All done.

我可以从注释中找到一些对我的本地分支的引用,但我不知道如何恢复代码。例如:

代码语言:javascript
复制
$ cd .git && grep -lr "smore more work" *
logs/refs/heads/progresscallback
logs/HEAD
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-03-23 00:15:29

我假设rebase实际上并没有完全成功?

您可能想要做的是查看git reflog show local。您应该会看到local分支之前的一些位置,希望大致是这样的:

代码语言:javascript
复制
d22ffd5 local@{0}: rebase finished: refs/heads/local onto fd02971501218f3817ceffa970ae9a4813139ae0
9011ecf local@{1}: commit: foo
6134eab local@{2}: commit: bar

假设local仍然被签出(如果没有签出,请检查它),您所需要做的就是git reset --hard 9011ecf,其中是分支在rebase之前指向的提交的SHA1。这将非常简单地将local分支重置为再次指向该提交,并随之更新您的索引和工作树。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5393772

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档