git - 运行交互式 rebase 时编辑器自动关闭

标签 git git-rebase git-interactive-rebase

我正在尝试使用交互式 rebase 将 40 多个提交压缩到我正在处理的分支中。我在 git 中选择的编辑器是 vscode。当我运行命令时:

git rebase -i <commit>

我短暂地看到要编辑的文件出现在 vscode 中,但随后它自动关闭。它将文件从“git-rebase-todo”重命名为“git-rebase-todo(从磁盘删除)”,然后关闭选项卡。

为什么会发生这种情况?我有什么选择?

最佳答案

vscode fork (生成)一个新进程。原来的退出并混淆了 git,因为 git 退出编辑器意味着工作已经完成。 rebase tmp 文件 git-rebase-todo 被 git 删除,由 vscode 指示。

要解决此问题,请更新 git 配置以在 wait 模式下使用启动 vscode:

git config --global core.editor "code --wait"

关于git - 运行交互式 rebase 时编辑器自动关闭,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69275828/

相关文章:

git - rebase 到没有共同祖先的分支

git - 使用 git rebase 编辑提交

git - 使用 'git rebase' 改写消息时如何查看提交的内容?

git 破坏了我的更改

来自另一个存储库目录的 Git 子模块

git - 完整路径的 zsh 主题 + 显示 git 更改

git - 整个分支 rebase 后如何更新标签?

git - 有没有一种方法可以简单地在提交前加上交互式 rebase ?

git - 在交互式 rebase 中删除/删除当前提交

bash - Git diff - 忽略重新排序