V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
mylovesaber
V2EX  ›  OpenAI

第一次体验到了 macos 文件系统设计对项目构建和运行的负面影响

  •  
  •   mylovesaber · 1 天前 · 681 次点击

    macos 用的文件系统默认是不区分大小写的,也就是 README.mDreadMe.MD 是相同的文件,之前有考虑改成大小写敏感的文件系统,但是看其他人测试,发现有些软件会出现兼容性问题,只好放弃。

    然后我遇到这种情况:用 idea 写完代码调试完成后打包上线,winserver 和 linux 服务器上线项目一直报错,但是 idea 没有任何代码层面的飘红,编译打包也没有报错,找半天才发现问题,有一个文件名 ThisIsTestFile.java 写成了 ThisisTestFile.java ,我把文件名改对后再打包还是没错,winserver 和 linux 上线也能正常运行了。。。

    以前没入行的时候听网友调侃说:

    让程序员对象崩溃的办法就是把代码中的半角冒号:改成全角冒号:
    让 ta 面对满屏幕的飘红而不知所措!
    

    感觉这个冷笑话可以改一下了:

    把 ta 在苹果电脑中写的所有代码文件名称中随机改几个字母的大小写!
    让 ta 靠 ide 运行项目找不到报错,但他的实施同事始终无法正常启动项目!
    
    13 条回复    2025-09-29 10:51:07 +08:00
    Tink
        1
    Tink  
    PRO
       1 天前
    APFS 默认确实是不区分大小写的,所以我一开始就给他格成区分大小写的了
    alleluya
        2
    alleluya  
       1 天前
    win 不是也不区分大小写么....
    hronro
        3
    hronro  
       1 天前
    我好几台 Mac 都是重新格式化成大小写敏感的 APFS 格式的,除了 Steam 以外没遇到过什么其他的软件兼容性问题。
    shoaly
        4
    shoaly  
       1 天前
    才知道这个冷知识, 心头一紧的同时好奇为啥这么久没触发过这个 bug
    看了一眼 vscode 原来...我都是远程开发的, 哈哈哈瞬间放心了
    julyclyde
        5
    julyclyde  
       1 天前
    嗯,之前也遇到过类似的问题
    git clone 下来然后 git status 就直接显示有变化了(其实是有俩文件名字相同大小写不同,clone 过程中覆盖了)
    v166ex
        6
    v166ex  
       1 天前
    感谢提醒!一直以为 Macos 是完全延续某些*nix 理念...
    OnEvent
        7
    OnEvent  
       1 天前 via iPhone
    @hronro Adobe 系列的软件似乎不支持大小写敏感的 APFS
    mylovesaber
        8
    mylovesaber  
    OP
       18 小时 44 分钟前 via Android
    @v166ex macos 的部分命令其实不是 gnu 命令,比如都叫 sed ,其实是 macos 和 gnu 两种版本,macos 版好像是个残血版
    mylovesaber
        9
    mylovesaber  
    OP
       18 小时 43 分钟前 via Android
    @OnEvent 那应该是了,我印象中以前见到有人提到过,但是想不起来是什么软件了
    mylovesaber
        10
    mylovesaber  
    OP
       18 小时 42 分钟前 via Android
    @shoaly 要不是用 ai 复制粘贴代码,我都没发现这个 bug ,那天找了一天头都找大了,死活解决不了无法启动的问题,最后没招了把整个仓库喂给 gemini ,几秒后 gemini 问我: 你是不是用的 macos 。。。
    mylovesaber
        11
    mylovesaber  
    OP
       18 小时 38 分钟前 via Android
    @alleluya win 和 linux 各种文件系统都是严格大小写敏感的啊。。。你记错了吧?
    mylovesaber
        12
    mylovesaber  
    OP
       18 小时 38 分钟前 via Android
    @Tink 之前印象中在 v2 上看到过有人说格成大小写敏感后,有些软件工作异常,然后就放弃了,老老实实用默认的🌚
    alleluya
        13
    alleluya  
       8 小时 21 分钟前
    @mylovesaber #11 我搜了下 win 默认就是不区分的 除非是启用 wsl 后配置大小写敏感 实际上也是 之前 win 上 Git 提交修改文件名 本地看就没改过来 还是 a->b->A 才改过来的 你才记错了吧
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2900 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 11:13 · PVG 19:13 · LAX 04:13 · JFK 07:13
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.