【问题标题】:Changing Filename Case with TortoiseSVN on Windows在 Windows 上使用 TortoiseSVN 更改文件名大小写
【发布时间】:2012-10-06 20:07:26
【问题描述】:

我一直在做一个使用 Windows 机器作为测试服务器的开发项目。最终,我希望“实时”版本最终出现在 Linux 机器上。在尝试在 Linux 机器上进行测试时,很明显我需要更改几个文件名的大小写,因为 Windows 不区分大小写,但 Linux 不区分大小写。当我在 Windows 中更改文件名大小写时,TortoiseSVN 识别出文件已更改并适当地标记了我的文件夹。但是,当我尝试提交更改时,TortoiseSVN 不仅告诉我没有进行任何更改,而且实际上将我所做的所有文件名更改恢复为原始大小写。

我的问题是,有没有一种简单的方法来更改文件名大小写从 Windows PC 并让更改出现在我的存储库中?我想尽可能避免任何类型的删除、提交、替换、提交情况,以保持我的提交整洁。谢谢!

【问题讨论】:

  • svn ren 有什么问题(重命名)?在 TSvn 中,右键单击该文件并从上下文菜单中选择 Rename

标签: windows tortoisesvn case-sensitive case-insensitive


【解决方案1】:

从弹出菜单中使用 Tortoise SVN 中的 重命名 选项。详见here(“移动文件和文件夹”章节)。

当您更改了多个文件名的大小写时,换句话说,您更改了文件名-它们已超出版本控制-这就是为什么 SVN 客户端注意到受版本控制的文件消失了(显然,这是因为 SVN未正确通知客户)。

如果您在 IDE 时碰巧遇到这种情况,或者您不小心更改了案例 - 当您选择显示为“丢失”和“非版本化”。检查this

【讨论】:

  • 在 Tortoise 中使用重命名选项效果很好!我试图在 Windows 资源管理器中简单地重命名文件。谢谢,pmod!
  • 我被困了一段时间,直到我意识到你必须提交文件夹,而不是文件。可能值得添加!
  • @Ewanw 您应该能够提交选定的文件以及整个文件夹 - 这取决于用户。如果您只有“一个更改”,这也是一样的,但通常在选择特定文件的情况下,您可以更好地控制应该提交的内容。
  • 当我尝试仅更新文件时,我从 subversion 收到错误。之所以担心,是因为您提交的是“已移动”文件,但未提交已删除文件。它给出了错误“无法提交 X,因为它是从不属于提交的 Y 移动的;行动的双方必须共同承诺'
【解决方案2】:

我发现 Tortoise SVN 有一个自动修复文件名大小写更改的设置。默认情况下它设置为 true,因此如果您只更改名称中字母的大小写,那么它将为您撤消您的更改......我可能会默默地无情地添加,在我看来,这是非常烦人的默认设置。

幸运的是,如果您导航到 TortoiseSVN Settings->Advanced->FixCaseRenames,您可以将其更改为 false,它将不再自动更正大小写更改。Setting Location

【讨论】:

  • 谢谢!我只是想合并两个分支,我的开发人员创建了具有不同大小写的同一个文件夹。我快要疯了。
  • WTF。谁认为在提交时默默地重命名我的几十个文件是个好主意?没有意义。我不打算做几十个 svn 重命名 - 哎呀你注意到文件被重命名了,那么在重命名之前询问如何?无论如何,谢谢!
  • 如果您在目录上启用了 Windows 10 的 SetCaseSensitiveInfo,则需要注意这一点,否则当 subversion 重命名文件时您将丢失数据。
【解决方案3】:

如果有人在 Windows(不区分大小写的操作系统)上的 SmartSVN 中搜索如何执行此操作,步骤如下:

  1. 在浏览器中选择文件,在菜单 Modify -> Rename and use some temp name (e.g. add X to the end of the file name), commit changes
  2. 在浏览器中选择文件,在菜单 Modify -> Rename and use the correct file name in correct case, commit changes

只有在这种情况下才会保存文件的日志。

【讨论】:

    猜你喜欢
    • 2010-12-20
    • 1970-01-01
    • 2011-12-02
    • 2012-05-18
    • 2013-01-12
    • 1970-01-01
    • 2016-09-12
    相关资源
    最近更新 更多