Perl SVN没有看到变化

Perl SVN没有看到变化,perl,svn,tortoisesvn,Perl,Svn,Tortoisesvn,我只是运行了一个perl脚本,在整个项目中用一个词替换另一个词 即: 我想将这些更改提交给subversion,但当我运行“svn状态”时,列表中不会出现任何修改过的文件 同样的事情也发生在使用“检查修改”的陆龟身上 这个perl脚本是否绕过了SVN用来检查更改的方法?您的脚本在.SVN文件夹中的本地SVN备份副本上运行。这就是svn用来比较变化的地方 更新:较新版本的subversion没有保留本地.svn文件夹。可能是您的perl脚本更改了subversion文件…您需要执行以下命令: p

我只是运行了一个perl脚本,在整个项目中用一个词替换另一个词

即:

我想将这些更改提交给subversion,但当我运行“svn状态”时,列表中不会出现任何修改过的文件

同样的事情也发生在使用“检查修改”的陆龟身上


这个perl脚本是否绕过了SVN用来检查更改的方法?

您的脚本在.SVN文件夹中的本地SVN备份副本上运行。这就是svn用来比较变化的地方



更新:较新版本的subversion没有保留本地.svn文件夹。

可能是您的perl脚本更改了subversion文件…

您需要执行以下命令:

perl -e "s/OLD/NEW/g;" -pi $(find ./ -type f | grep -v '/\.svn/' )

那个
grep
命令在我的命令中非常常见,以至于grep可以通过subversion目录执行。

Oops!抢手货现在有没有办法扭转这种局面?你应该再次检查这个项目。一旦你搞乱了这些文件,所有的赌注都将被取消。SVN的设计使得diff和其他常见任务不需要网络连接。因此,这里更改了本地重复文件。您可能希望了解哪些人知道如何为各种源代码管理系统执行此类操作。另外,它也是一个很好的代码搜索工具。我支持使用ack,但是如果你打算使用find,那么最好使用find的强大功能,而不是使用grep对结果进行后期过滤。find完全能够跳过.svn目录,节省了递归到它们中然后用grep剔除它们的时间
find./-name.svn-prune-或-type f-print
如果某些文件名包含空格,我认为该命令无法正常工作。
perl -e "s/OLD/NEW/g;" -pi $(find ./ -type f | grep -v '/\.svn/' )