如何在git bash vim编辑器本身上打开特定文件以在出现错误msg“ e325-attention-swap-file-ready-present-error-in-vi”时编辑内容

时间:2019-05-30 10:32:57

标签: git vi

问题场景:当我尝试执行git commit时,遇到错误消息“ e325-attention-swap-file-ready-present-error-in-vi”。

Qn:“我如何在git bash vim编辑器本身上打开该特定文件,以查看冲突发生的确切位置?我不是问如何从暂存区中删除文件,而是要在git bash的vim编辑器本身上打开该文件?并且,如果能够的话,一旦完成,我如何将该文件保存在git bash中的vim编辑器上,并退出vim中的刺激模式。 PS:有什么好心的人能给我一个有用的“ f1 / -help”类型的命令,每当我停留在vim编辑器模式下,而每次遇到此类问题时都不会完全退出编辑器时,可以使用该命令进行检查吗?谢谢!

2 个答案:

答案 0 :(得分:0)

  1. 交换文件很有可能来自.git/COMMIT_MESSAGE文件(我相信我的名字正确)。当vim崩溃或异常退出以帮助恢复数据时,它存在。根据您的情况,我建议将其删除(rm .git/.COMMIT_MESSAGE.sw?-使用ls -a .git或制表符完整的方式查找)。然后提交。
  2. 有关退出vim的信息,请参见this question。长话短说,我在完成提交消息后按了 Esc ,然后按了 Z Z 保存并退出。
  3. 质量检查人员还提到:help-这是阅读有关vim的最佳位置。 :help通常可以用制表符填充(您可能需要 Ctrl - d )。如果您打算完全使用vim,我强烈建议通过vimtutor和一些帮助页面运行。或者,将EDITORVISUAL环境变量设置为其他变量(对于不想学习命令行编辑器的人来说,我见过很多nano, emacs)。另请注意,vi.stackexchange存在。

注意:通常的建议是不要删除交换文件。通常,您想从它们中恢复信息,或者查看是否有可恢复的信息。互联网和帮助页面包含有关执行此操作的详细信息。但是,对于提交消息和OP,最简单的操作是从头开始(因为交换文件很可能是在OP无法确定要做什么的情况下通过破坏vim实例来创建的)。

答案 1 :(得分:0)

viex引擎的漂亮覆盖。 c.f. this man page特别是ex

您在vi中输入的任何带有冒号提示符的命令(转义,然后依次为:和命令)都是ex命令。这就是为什么很多人使用:q:x:wq:q!(等等)摆脱vi的原因。