如何删除文件上的svn:eol-style propety

时间:2016-12-01 01:14:09

标签: svn version controls

如果在文件上设置了svn:eol-style属性,当我使用vimdiff作为diff-cmd工具时,我会看到临时文件。

这是由于来自Windows的用户在他的svn配置文件中使用auto prop enable设置属性而设置的。我问他,他同意了。 但是,这不会删除已经具有属性集的文件的svn-eol关键字属性。

但现在问题是: - 如何为已经设置了svn-eol关键字属性的文件删除它? - 另外,我如何在存储库级别强制执行svn-eol关键字属性从未设置?

1 个答案:

答案 0 :(得分:0)

删除属性

您可以使用propdel子命令删除属性:

$ svn help propdel
  

propdel (pdel, pd):从文件,目录或修订版中删除属性。

 usage: 1. propdel PROPNAME [PATH...]
        2. propdel PROPNAME --revprop -r REV [TARGET]
     
      
  1. 删除工作副本中的版本化道具。
  2.   
  3. 在repos修订版中删除未版本化的远程道具。   TARGET仅确定要访问的存储库。
  4.   

获得房产

这就是propget子命令的用途:

$ svn help propget
  

propget (pget, pg):在文件,目录或修订版上打印属性的值。

 usage: 1. propget PROPNAME [TARGET[@REV]...]
        2. propget PROPNAME --revprop -r REV [TARGET]
     
      
  1. 打印版本化的道具。如果指定,REV确定在哪个   修改目标首先被查找。
  2.   
  3. 在repos修订版上打印无版本的远程道具。   TARGET仅确定要访问的存储库。
  4.   

禁止设置属性

我认为,通过将某些设置为存储库中的属性,您无法真正操作,但据说您应该能够使用a pre-commit hook在服务器上设置存储库这是一个脚本(或实际上任何其他类型的可执行程序),它对要提交的更改执行必要的检查,如果它检测到开发人员设法在其中一个文件上设置svn:eol-style属性,则提交失败,并尝试提交此更改。

我不知道如何实现这个检查,但据说上面的指针你可以解决这个问题。