svn如何删中文目录. 中文目录结构,UNICODE, 目录下建了(中文)文件.删除时路径无法解析.

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了svn如何删中文目录. 中文目录结构,UNICODE, 目录下建了(中文)文件.删除时路径无法解析.相关的知识,希望对你有一定的参考价值。

参考技术A 1、看看舒服法是不是分了全角、半角什么的?
2、rename为英文的再删除试一试。
3、直接在版本库浏览器如果删除不了的话,check到本地再删除后再提交试一试看行不行呢

如何仅还原 SVN 工作副本中的目录?

【中文标题】如何仅还原 SVN 工作副本中的目录?【英文标题】:How do you revert ONLY directories in an SVN working copy? 【发布时间】:2011-06-16 15:46:42 【问题描述】:

我想恢复 SVN 工作副本中的 目录和所有子目录,以便它们与存储库匹配,但我不想触及其中的任何文件目录。

我的一个 SVN 应用程序递归地在我的工作副本中的每个目录上设置一个 SVN 属性,但我想恢复这些更改以阻止它突出显示它们并尝试将更改提交到 SVN 属性。简单地更改它以匹配 HEAD 是行不通的。

有什么想法吗?我已经阅读了各种 SVN 资源,但似乎没有一个可以处理这种极端情况。

【问题讨论】:

为响应干杯。任何外壳都很好。这是一个 Windows 系统,但我有 Bash。 你真的应该改变你接受的答案 为什么?我接受的那个是完全合适的。有 40+ 票的人不回答这个问题。阅读。想想看。再读一遍。测试一下。 【参考方案1】:

适用于所有平台:

svn revert . --recursive

(请注意,这将还原所有内容,而不仅仅是目录。)

【讨论】:

为什么这个答案只有 1 个赞成票?其他答案让我想在我的眼睛里扎一根针! @Petrucio 这不也涉及文件吗?我不想递归地恢复当前目录下的所有内容,只是目录。引用 Greg Stein 的话:“但是对目录进行递归还原可能会比您想象的要多得多(将所有本地 mods 扔到它下面的所有文件和目录中)。”假设这是适用的,最终结果将是我的工作副本的完全破坏。哎呀。 既然模组拒绝删除这个:***如果你有我的问题,请不要这样做,否则你会破坏你的工作副本*** 如果我们需要更多的证据来证明人们对实际工作的代码的漂亮程度进行了投票。哇。 不幸的是,这是您在 Google 上搜索 svn revert recursively 时首先出现的内容,在这种情况下,此答案是正确的。如果可能,我建议更改问题标题。【参考方案2】:

在 Windows 上,您可以通过命令行执行以下操作:

for /d /r %i in (*) do svn revert %i

如果您从批处理文件中调用它,请改用%%i请先备份!

这个命令是dirty的,它会遍历所有目录,甚至是未修改的目录或不在svn下的目录。您可以使用类似这样的 Ruby 脚本以更简洁的方式进行操作:

`svn st`.split("\n").grep(/^ M\s+(.*)/)  $1 .find_all  |i| File.directory? i .each do |i|
  system "svn revert #i"
end

【讨论】:

【参考方案3】:

您可以将findsvn revert 结合使用:

find . -type d | grep -v .svn | xargs svn revert

这不会触及目录中的任何文件,除非您使用-R选项(相当于--depth=infinity)。

【讨论】:

【参考方案4】:

首先,在安全的地方制作一份工作副本。 :)

您可以使用以下命令编辑 svn 工作副本的属性:

REM Delete all mergeinfo properties recursively
svn propdel svn:mergeinfo -R

【讨论】:

以上是关于svn如何删中文目录. 中文目录结构,UNICODE, 目录下建了(中文)文件.删除时路径无法解析.的主要内容,如果未能解决你的问题,请参考以下文章

svn如何彻底删除目录

Linux下 利用find命令删除所有.svn目录

我之前不小心删了svn中某一个文件夹,现在重新建这个文件夹,想把它提交到svn,却提交不了,怎么办

svn - 如何忽略目录

如何将eclipse项目和svn关联

svn权限设置问题