【问题标题】:svn changes my files namessvn 更改我的文件名
【发布时间】:2009-12-10 21:42:43
【问题描述】:

我在我的 Ubuntu 9.10 上使用命令行 SVN 1.6.5。这是我第一次在最新的 Ubuntu 上使用它,我发现 svn 对文件名感到困惑。问题如下:

我第一次使用

sudo svn co http://my-repository/h2m h2m

成功签出这些文件后,我立即使用

svn st 找到了

dean@notebook:~/FAT32/h2m$ svn st
?       license                  
?       readme                   
?       cnt/readme               
!       cnt/README               
?       doc/changes              
!       doc/CHANGES              
?       data/readme              
!       data/README              
?       octave/readme            
!       octave/README            
!       LICENSE                  
!       README    

看起来像

我发现检查了我的\h2m\data\ 文件夹,发现有一个名为README 的文件。

我还检查了我的服务器存储库:

dean@notebook:~/FAT32/h2m/data$ svn list http://my-repository/h2m/data
README
digits.m
digits.mat
digits.sig

这很奇怪,我期待收到您的来信。

顺便说一句:我正在使用双启动,我发现这些文件在我使用 Tortoise SVN 的 Windows 7 上运行良好。

再次感谢。

【问题讨论】:

  • 我不知道这里发生了什么。

标签: svn unix command-line sudo


【解决方案1】:

看起来不对的第一件事是您以 root (sudo) 身份签出,然后使用普通用户帐户。

另一件事是文件系统区分大小写。在使用 fat32 分区时,我会期待这样的怪异。也许检查挂载选项会有所帮助。

【讨论】:

  • 是的,这可能就是问题所在。删除现有的结帐,并在不使用“sudo”命令的情况下重新结帐。永远不要在没有特定目的的情况下使用 root。特别是永远不要从互联网上复制粘贴以 sudo 开头的命令。
  • @Paul — 虽然我同意您不应该在同一个工作副本中混合用户(并且可能根本不应该使用 root),但我怀疑这是问题的原因。我认为@hacker 拥有它的权利——如果这是两个操作系统之间共享的驱动器,它可能是 FAT32,它不保留大小写。
【解决方案2】:

这个问题很可能与文件系统不区分大小写有关。您应该检查挂载文件系统的选项是什么,特别是禁用自动转换为小写。 Subversion 将文件名视为区分大小写,但您当前的文件系统将其转换为小写,因此状态结果:

? cnt/自述文件
! cnt/自述文件

这意味着 subversion 认为它创建了一个名为 cnt/README 的文件,但该文件不存在于当前文件系统中(! 标记表示 已删除),同时如果看到cnt/readme 作为文件系统中存在的新文件,但从未添加到 subversion 中)

修正你的挂载选项,或者使用区分大小写的文件系统,你会没事的。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-20
    • 2011-02-20
    • 2018-09-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多