恢复svn:ignore的递归svn propset

时间:2015-12-19 17:38:05

标签: svn revert svnignore svn-propset

我不小心跑了

svn propset svn:ignore "..." . -R

在一个巨大的subversion存储库的根目录中。之前,许多文件夹都有各自的svn:ignore属性。

我想在运行这个" svn propset"之前恢复状态。命令。到目前为止,我没有提交更改。你有什么建议吗?

我认为我可能只是提交更改,然后使用merge恢复提交。我有没有想到的风险?有没有更好的方法来撤消这个甚至没有提交?

备注:我还有一些尚未提交的本地更改。

2 个答案:

答案 0 :(得分:0)

如果您只有文件内容更改,我会将除.svn文件夹之外的整个目录结构复制到安全位置,还原所有内容,然后将文件内容复制回来。

如果您在工作副本中重命名,这将导致问题。

答案 1 :(得分:0)

您可以创建本地更改的修补程序(不包含属性)。然后还原所有内容,以便撤消对文件和属性的所有更改。然后再次应用补丁。

svn diff --show-copies-as-adds --ignore-properties > filechanges.patch
svn revert -R *
svn patch filechanges.patch

我想这应该适用于大多数情况。 Anways,我建议在这之前创建一个备份(只是复制整个项目),以确保你不会失去任何工作。