加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

如何在vim中重新加载文件的属性而不会丢失更改

发布时间:2020-12-15 20:58:40 所属栏目:安全 来源:网络整理
导读:有时在我点击时在VIM上编辑代码:w我发现文件没有在源服务器上签出(只读FS). 所以我继续svn | Teamprise Explorer然后签出文件(使文件可写),但在那之后:执行w时它给出相同的消息,似乎vim没有检查权限是否已被更改. 现在问题,如果我点击:e文件被重新加载,但
有时在我点击时在VIM上编辑代码:w我发现文件没有在源服务器上签出(只读FS).

所以我继续svn | Teamprise Explorer然后签出文件(使文件可写),但在那之后:执行w时它给出相同的消息,似乎vim没有检查权限是否已被更改.

现在问题,如果我点击:e文件被重新加载,但我会松开每一个变化,使用:W!不是那么优雅,它可以把你变成一个懒惰的程序员,总是这样做,然后比较’最新版本’.

是否存在一些如何仅重新加载权限?

解决方法

我不知道如何仅加载权限,但还有其他一些事情要尝试.

一种是使用here中的脚本在文件只读时阻止修改:

function UpdateModifiable()
  if !exists("b:setmodifiable")
    let b:setmodifiable = 0
  endif
  if &readonly
    if &modifiable
      setlocal nomodifiable
      let b:setmodifiable = 1
    endif
  else
    if b:setmodifiable
      setlocal modifiable
    endif
  endif
endfunction
autocmd BufReadPost * call UpdateModifiable()

另一种是为源代码控制获取或编写插件.我们在工作中使用perforce,我发现了一个插件,可以让我直接从vim菜单中查看perforce.此外,如果我尝试编辑未签出的文件,vim会提示我询问是否要这样做.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读