提交发生后,我需要编辑文件上的 svn 属性。因此,我想使用提交后脚本。
例子:
我有一个名为的属性,当我提交一个名为的文件时export
设置
为(或删除)该属性为新值,如.test
example.ex
export
succeeded
在命令行我会使用这个:
svn propedit "export" file:///svn/repositoryName/path/to/file/in/repository/example.ex
这将打开我的系统编辑器vi
,我会看到值test
。我可以将它更改为我想要的任何内容,并使用 vi 命令保存并退出文件,例如:wq
Subversion 会返回这样的消息
"svn-prop.tmp" 1L, 10C written
Set new value for property 'export' on file:///svn/repositoryName/path/to/file/in/repository/example.ex'
Committed revision 67.
太好了。但正如我所说,我需要在提交后脚本中,我无法控制 vi (或者我错了吗?)。
所以 Subversion 让我可以将文件添加到命令propedit
中。该文件仅包含新值succeeded
。
新命令应如下所示:
svn propedit "export" file:///svn/repositoryName/path/to/file/in/repository/example.ex --file /path/to/propertyValueFile/propValue.file
这就是问题所在:最后一个命令不起作用。再次vi
打开,我需要手动更改我的值。为什么?我究竟做错了什么?