现在做项目,一般使用的是Git来管理代码。
但是我一般熟用的指令局限于git clone,git add,git commit,git push,git pull。。。偶尔出现冲突就解决解决冲突,遇到没出现过的问题就上网搜一搜。
刚刚出现了一个之前也出现过的问题,当我运行git commit指令时,控制台跳转进了一个奇怪的编辑页面,如下图。
之前不知道那是什么东西,不知道怎么操作,直接关掉了。
但我总不能每次都直接关掉吧,所以刚刚我去搜了一下,原来这个是vim编辑器。
关于vim
关于什么是vim,我上网搜了一下,以下是收获到的网站:
这是它的官网: Vim
emmmmm……作为前端开发学习者,感觉它的官网有那么点丑。
这里有wiki上对vim的介绍的中文版:Vim (简体中文)
github上也有关于vim的介绍:https://github.com/vim/vim
简书上关于vim的学习: Vim 从入门到精通
解决git bash中出现vim的情况
emmmmm……到目前为止还没细看以上vim的内容,现在记录这篇博客的重点还是在使用Git中,解决vim这个问题。
看到很多的解决方法一上来就是按Esc键退出插入模式。但是进入vim编辑器的时候,并不是插入模式的。根据我的乱按,当键入p时,编辑器就会进入插入模式。
接着就可以按Esc键退出插入模式,然后输出:wq或者ZZ即可退出vim编辑器,回到git bash界面。
最直接方法:【首先按ESC键退出编辑状态,然后按shift+;键,再按wq!保存退出,按q!则为不保存退出;】
方法步骤是挺简单的。但是还是得了解一下git中vim的命令是啥意思。
git中vim的命令
命令 | 说明 |
---|---|
:w | 保存编辑后的文件内容,但不退出vim编辑器。这个命令的作用是把内存缓冲区中的数据写到启动vim时指定的文件中。 |
:w! | 强制写文件,即强制覆盖原有文件。如果原有文件的访问权限不允许写入文件,例如,原有的文件为只读文件,则可使用这个命令强制写入。但是,这种命令用法仅当用户是文件的属主时才适用,而超级用户则不受此限制。 |
:wq | 保存文件内容后退出vim编辑器。这个命令的作用是把内存缓冲区中的数据写到启动vim时指定的文件中,然后退出vim编辑器。另外一种替代的方法是用ZZ命令。 |
:wq! | 强制保存文件内容后退出vim编辑器。这个命令的作用是把内存缓冲区中的数据强制写到启动vim时指定的文件中,然后退出vim编辑器。 |
ZZ | 使用ZZ命令时,如果文件已经做过编辑处理,则把内存缓冲区中的数据写到启动vim时指定的文件中,然后退出vim编辑器。否则只是退出vim而已。注意,ZZ命令前面无需加冒号“:”,也无需按Enter键。 |
:q | 在未做任何编辑处理而准备退出vim时,可以使用此命令。如果已做过编辑处理,则vim不允许用户使用“:q”命令退出,同时还会输出下列警告信息:No write since last change (:quit! overrides) |
:q! | 强制退出vim编辑器,放弃编辑处理的结果。如果确实不需要保存修改后的文件内容,可输入“:q!”命令,强行退出vim编辑器。 |
:w filename | 把编辑处理后的结果写到指定的文件中保存 |
:w! filename | 把编辑处理后的结果强制保存到指定的文件中,如果文件已经存 在,则覆盖现有的文件。 |
:wq! filename | 把编辑处理后的结果强制保存到指定的文件中,如果文件已经存在,则覆盖现有文件,并退出vim编辑器。 |
备注:以上表格内容参考自简书中的一篇文章:git中的vim命令,侵删!
转自:http://blog.csdn.net/sinat_39571186/article/details/78911814