我设法在我本地的git库中创建了一个小混乱。我试图通过使用following instructions来修复一个中断的提交。在运行"git commit --amend“之前(以及在git rebase --interactive之后),我确定我的更改是不正确的,所以我执行了"git reset HEAD --hard”。我告诉你,这不是个好主意。
现在交互式的rebase似乎“卡住”了。Git将当前分支显示为(|REBASE-m)。每个命令(cd ..、ls、git rebase...)在我的存储库中出现以下错误:
rebase cat:.git/
-merge/head-name:没有这样的文件或目录
下面是git rebase --abort的样子:
$ git rebase --abort
cat: c:/_work/project/src/git/.git/rebase-merge/quiet: No such file or directory
cat: c:/_work/project/src/git/.git/rebase-merge/head-name: No such file or directory
cat: c:/_work/project/src/git/.git/rebase-merge/orig-head: No such file or directory
HEAD is now at 4c737fb Revert "Modified file names"
rm: cannot remove `c:/_work/project/src/git/.git/rebase-merge/done': Permission denied
rm: cannot remove directory `c:/_work/project/src/git/.git/rebase-merge': Directory
not empty
cat: .git/rebase-merge/head-name: No such file or directory
下面是git rebase的结果--继续:
$ git rebase --continue
cat: c:/_work/project/src/git/.git/rebase-merge/prev_head: No such file or directory
cat: c:/_work/project/src/git/.git/rebase-merge/end: No such file or directory
cat: c:/_work/project/src/git/.git/rebase-merge/msgnum: No such file or directory
cat: c:/_work/project/src/git/.git/rebase-merge/onto: No such file or directory
cat: c:/_work/project/src/git/.git/rebase-merge/quiet: No such file or directory
prev_head must be defined
cat: .git/rebase-merge/head-name: No such file or directory
有什么想法吗?我想将情况重新设置为我开始深思熟虑的rebase操作之前的状态。
下面是git log --oneline显示情况的方式:
4c737fb Revert "Modified file names"
247ac02 Modified file names
33141e6 Message modifications
10a4a04 Modified db script
这个很好。
我使用的是msysgit v1.7.0.2。
发布于 2010-09-11 02:47:31
看起来Git试图删除.git/rebase-merge
目录,但无法完全删除它。你有没有试过把那个文件夹复制走?如果.git/rebase-apply
文件夹存在,还要复制该文件夹。
发布于 2019-03-01 04:02:23
我被困在这里了。我创建了head-name文件,然后我遇到了另一个错误,说找不到onto文件,所以我创建了那个文件。然后我收到另一个错误,说无法读取‘.git/rebase-apply/ or’:没有这样的文件或目录。
因此,我查看了用于rebasing的git documentation,发现了另一个命令:
git rebase --quit
这让我回到了我的分支上,没有任何变化,我可以重新开始我的rebase,像新的一样。
发布于 2011-01-21 18:37:10
由于僵尸vim.exe进程,我也遇到了类似的问题。在任务管理器中杀死它,然后用git rebase --abort
修复它。
https://stackoverflow.com/questions/3685001
复制相似问题