合并后,我可能同时在文件中有内容变更和属性变更:
>svn st foo.h
MM foo.h
有没有一种方法可以保留内容变更,但还原属性变更?
我可以将文件复制到临时位置,然后还原,再复制回去:
>cp foo.h /tmp
>svn revert foo.h
>mv -f /tmp/foo.h foo.h
>svn st foo.h
M foo.h
但如果有很多文件的话,这就很麻烦了,而且需要编写单独的脚本。
我希望可能有我错过的svn选项。
合并后,我可能同时在文件中有内容变更和属性变更:
>svn st foo.h
MM foo.h
有没有一种方法可以保留内容变更,但还原属性变更?
我可以将文件复制到临时位置,然后还原,再复制回去:
>cp foo.h /tmp
>svn revert foo.h
>mv -f /tmp/foo.h foo.h
>svn st foo.h
M foo.h
但如果有很多文件的话,这就很麻烦了,而且需要编写单独的脚本。
我希望可能有我错过的svn选项。
抱歉,我不知道仅恢复属性的方法... 但是如果我面临这种情况,我会运行:
$ svn proplist -v -r $REV foo.h
... # output, which I would copy to the clipboard
$ svn propedit foo.h
... paste in properties ...
如果你需要还原一堆文件的属性,这甚至可能是可以脚本化的。
for f in $( svn st . | grep '^MM' | cut -c 3- )
do
cp $f $f.$$ && svn revert $f && mv $f.$$ $f
done