我将我的本地git repo复制到我的sites文件夹,以便我可以在本地开发,然后将更改推送到github。
当我尝试通过“git commit -a”提交时,我收到此消息:
E325:注意
找到一个名为“.git / .COMMIT_EDITMSG.swp”的交换文件
owned by: usrname dated: Sat Feb 4 18:56:02 2012
file name: ~myUsername/oldRepoLocation/.git/COMMIT_EDITMSG
modified: YES
process ID: 15435
打开文件“.git / COMMIT_EDITMSG”
dated: Sun Feb 12 19:51:43 2012
NEWER than swap file!
(1)另一个程序可能正在编辑同一个文件。 如果是这种情况,请注意不要以两个为止 进行更改时,同一文件的不同实例。 退出,或继续谨慎。
(2)此文件的编辑会话崩溃。 如果是这种情况,请使用“:recover”或“vim -r .git / COMMIT_EDITMSG” 恢复更改(请参阅“:帮助恢复”)。 如果您已经这样做,请删除交换文件“.git / .COMMIT_EDITMSG.swp” 避免这个消息。
交换文件“.git / .COMMIT_EDITMSG.swp”已经存在!
答案 0 :(得分:7)
当Vim正在运行时,它会在缓冲区中打开的每个文件中创建一个.swp文件。这是为了恢复崩溃。
在这种情况下,您可能在打开Vim时复制了repo以编辑提交消息,从而将.swp文件保留在新副本中。删除错误的swp文件是安全的:
rm .git/.COMMIT_EDITMSG.swp
答案 1 :(得分:0)
要添加上述海报的说明,可能值得一提的是,您可以配置vim以将其所有.swp
文件保存到特定目录中。
将来,如果您想避免此类问题,只需在swap_files
目录中创建一个目录~/.vim/
,然后将此行添加到.vimrc
。
set directory^=$HOME/.vim/swap_files/