除了单个文件之外,如何在本地执行svn还原

时间:2013-07-30 14:28:30

标签: svn revert

为了测试目的,我在本地文件夹中对多个文件进行了更改。但是,我想将它们恢复到原始状态,除了单个文件,在目前情况下我仍然需要它。目前,我使用

svn revert -R .

将所有这些恢复到原始状态。有人可以帮助我,如何在此操作中使用排除单个文件的命令?

2 个答案:

答案 0 :(得分:1)

两种选择:

  • 添加所有需要还原更改列表中的文件(全部添加,删除单个文件),使用revert --cl
  • 将所有文件存储在文本文件(以空格分隔的列表)中,并将其传递给revert --target FILE

您还可以将WC的当前状态提交到某个临时分支,还原所有,将singe文件从分支合并到主干

答案 1 :(得分:0)

+更新(来自@lazy獾的回答): 步骤:

  1. Svn 状态
  2. Grep 除具有模式的文件名外的所有更改
  3. 删除不必要的内容(例如:M、?、D、C)
  4. 将其保存到文件并使用 --targets 文件名

前:svn status | grep "^\M" | grep -v "pattern" | awk '{print $2}' > change.txt 本示例将首先获取所有不带模式的修改文件,然后从路径中删除不必要的信息,然后将其保存到文件中。

此后,使用 svn revert --targets change.txt 还原文件