• @[email protected]
        link
        fedilink
        English
        133 months ago

        Huh, what makes this a use case in favor of case sensitive file names? How does git use this feature?

        • @[email protected]
          link
          fedilink
          263 months ago

          Create multiple branches that only differ in cases from a Unix OS so it breaks git for Windows users in the same project.

          • @[email protected]
            link
            fedilink
            93 months ago

            We had a repo with some really weird (filename) case issues on Mac also. I could only fix it on my home Linux machine, by deleting all the affected files, committing that, then restoring them with all lowercase names. Only time I’ve dealt with that in 20 years but it can happen!

    • @[email protected]
      link
      fedilink
      113 months ago

      I feel the same way about programming languages. There is no way that “User” and “user” should refer to different variables. How many times has that screwed people up, especially in a weekly typed language?

      One of the many things that I feel modern versions of Pascal got right.

      • @[email protected]
        link
        fedilink
        12
        edit-2
        3 months ago

        Nope. Completely different.

        Case is often used to distinguish scope. Lowercase is local while uppercase is public. “Name = name” is a pretty standard convention, especially in constructors.

        There is a ubiquitous use case in programming. There is not in the file system.

        • @[email protected]
          link
          fedilink
          53 months ago

          My point is not about how case is meant to be used my point is that it is very easy to make a mistake that is difficult to spot. I think it makes a lot more sense to the case insensitive, and force different names to be used.

        • @[email protected]
          link
          fedilink
          33 months ago

          This is the first time I’ve seen uppercase denoting scope. Usually it is done with a “_” or “__” prefix.

          Casing styles usually mean different identifier types.

          snake_case or pascalCase for functions and variables, CamelCase for types, UPPER_SNAKE_CASE for constants, and so on.

          If we want to apply this to file systems, you could argue something like: CamelCase for directories, snake_case for files, pascalCase for symlinks, UPPER_SNAKE_CASE for hidden files.

      • @[email protected]
        link
        fedilink
        English
        9
        edit-2
        3 months ago

        My naming convention for C++ is that custom types are capitalized and instances aren’t. So I might write User user;.

    • @[email protected]
      link
      fedilink
      33 months ago

      I think if you can write them in two different ways it should consider them two different things

    • @[email protected]
      link
      fedilink
      23 months ago

      It’s quite useful for stuff like PROGRAM and Program in the same directory where PROGRAM is the program itself and Program is some unrelated files about the program. Bad example, but the case stands.

      • @[email protected]
        link
        fedilink
        13 months ago

        So what you’re telling me is that it’s useful when the software you use is made by absolute idiots?

        • @[email protected]
          link
          fedilink
          23 months ago

          It’s not about software. Program, PROGRAM were just placeholders for content. I know you can think more abstract and argue in better faith than this.