如何防止svn扩展$Id$关键字?

如何防止svn扩展$Id$关键字?,svn,Svn,标题怎么说 我尝试了svnpd,但不知道使用它的正确语法 >svn pd svn:keywords Id svn: warning: 'Id' is not under version control 更新: 我希望它能覆盖整个当前目录,而不仅仅是一个文件,因此我尝试: >svn propdel svn:keywords "Id" . -R svn: warning: 'Id' is not under version control property 'svn:keywords'

标题怎么说

我尝试了
svnpd
,但不知道使用它的正确语法

>svn pd svn:keywords Id
svn: warning: 'Id' is not under version control
更新: 我希望它能覆盖整个当前目录,而不仅仅是一个文件,因此我尝试:

>svn propdel svn:keywords "Id" . -R
svn: warning: 'Id' is not under version control
property 'svn:keywords' deleted (recursively) from '.'.
我的文件仍然展开了
$Id$

更新2: 更清楚地说,我没有向svn承诺任何东西,只是检查它并不时更新

我注意到,当我使用git svn获取它时,所有的
$Id$
标记都被保留(而不是展开),我希望svn也这样做

现在我运行这个命令:

>svn propdel svn:keywords . -R
在不展开$Id$的情况下,我现在应该如何获取最新文件?我想我想告诉svn再次提取所有文件

我试过:

>svn revert . -R

但它似乎没有达到我想要的效果。

您需要说明您想要删除的内容。因此,您在末尾缺少一个文件名

svn propdel svn:keywords "Id" file

否则,svn似乎只将最后一个参数作为文件名,而这不受修订控制。

'svn propdel'只将路径作为参数,而不是“Id”。因此,您只能完全删除svn:keywords属性,或者编辑该属性

因此,如果您不关心其他关键字,可以使用以下关键字:

svn propdel svn:keywords . -R
如果您想将某些关键字作为标准,而不是“ID”,则可以递归设置:

svn propset svn:keywords "Revision" . -R
另一件事是:如果关键字“Id”被删除,该关键字在文件中保持不变。如果它在之前已展开,它将保持这种方式,但如果返回到$Id$,它将不会展开

回答更新2:svn还原始终从文件中获取最后一次修订。那不是你想要的


正如我之前所说的,如果关键字被扩展一次,它们将保持不变,即使您稍后停用扩展。因此,您需要一个脚本将文件恢复到未展开的$Id$并再次提交。之后-如果您按照描述停用扩展-关键字保持未扩展。

他不会错过文件名,它是“.”-实际目录。但是“Id”是一个太多的参数。是的,我错过了删除时不需要的参数。在回答之前最好先检查一下,抱歉出于好奇,这种行为最初是如何被激发的?虽然svn支持属性来扩展诸如$Id$之类的内容,但它们在默认情况下并没有设置。呵呵,真的吗?有趣!我不知道,伙计!