什么是svn属性的用途

时间:2011-06-09 05:09:22

标签: svn

我已经读过使用“svn propset”,您可以设置文件和目录的属性。 可以将哪些元数据附加到这些属性?有人用过吗? 如果是这样,请提供一些例子。

此致 vadiraj

4 个答案:

答案 0 :(得分:2)

我经常使用的是svn:executable,它对存在这种情况的操作系统上的文件设置了“+ x”权限:

svn propset svn:executable yes thefile.exe

答案 1 :(得分:2)

有svn specfic属性,然后是第三方/通用属性。 svn特定属性以svn:开头,由svn本身使用。

我设置的最常见的例子是svn:ignore,它告诉subversion从比较中忽略目录/文件并提交到subversion repo。我们在项目结构中生成文件的IDE中使用它很多,因此您不必/不想将它们提交到结构中。

还有svn:externals,它本质上是一个符号链接,您可以在其中引用将被提取为当前目录的不同subversion repo /目录。这仅适用于目录。

还有svn:eol-style,它可以指定文件的换行符。

答案 2 :(得分:1)

我使用的最强大的属性之一是svn:externals。这将允许您从存储库(甚至其他存储库)中的不同位置共享文件/子目录。提供此重用非常有用。

来自TortoiseSVN帮助:

  

有时构造一个有用的东西   工作副本由一个   不同结账的数量。对于   例如,您可能需要不同的文件   或来自的子目录   存储库中的不同位置,   或者可能来自不同的存储库   共。如果你想要每个用户   有相同的布局,你可以定义   要拉出的svn:externals属性   在指定的资源中   需要它们的地方。

答案 3 :(得分:1)

有些人喜欢将svn:keywords属性设置为在其源文件中获取keyword substitution。这样:

$ svn propset svn:keywords 'HeadURL Id'
例如,

将使用以下内容替换源文件中的$HeadURL$

$HeadURL: http://svn.collab.net/repos/trunk/README $

$Id$

$Id: calc.c 148 2006-07-28 21:30:43Z sally $

有些人喜欢这些,有些则不喜欢。

还有svn:mime-type所讨论的{{1}}属性over here。这个对于标记不应调整其行尾标记以符合本地约定的二进制文件非常有用。