Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Case-Sensitive path collision in phpDocs #41

Open
mayamcdougall opened this issue Mar 23, 2021 · 2 comments
Open

Case-Sensitive path collision in phpDocs #41

mayamcdougall opened this issue Mar 23, 2021 · 2 comments

Comments

@mayamcdougall
Copy link
Collaborator

@PhrozenByte Not a big issue, but I was wondering if you could look into this sometime.

I've been unable to update my local picocms.github.io repo from upstream because of a case-sensitive filename collision. My local filesystem is case sensitive (obviously, or I wouldn't be having the issue 😂), and when I try to fetch upstream, I get the following warning:

warning: the following paths have collided (e.g. case-sensitive paths
on a case-insensitive filesystem) and only one from the same
colliding group is in the working tree:

  'phpDoc/pico-3.0.cache/packages/Default.html'
  'phpDoc/pico-3.0.cache/packages/default.html'
  'phpDoc/pico-3.0/packages/Default.html'
  'phpDoc/pico-3.0/packages/default.html'

I don't know anything about your phpDocs, but I don't imagine this was done intentionally. Any attempt I make to merge upstream tries to clobber these files, keeping only one or the other. It's only been a minor inconvenience so far, but to get around it, I've been keeping my personal fork out-of-date and just editing/committing the individual files I've needed to change. 😅

Absolutely no rush on this. It's just something that I've been meaning to mention for a little while.

I just wanted to bring it to your attention because it didn't really seem like it should be set up this way.

Thanks. 😁

@PhrozenByte
Copy link
Collaborator

PhrozenByte commented Mar 23, 2021

Good question 😆

All files are created by https://www.phpdoc.org/ on Travis CI (i.e. on Linux, so case sensitive). This naturally causes issues on OS' with case insensitive paths (like Windows - by default at least).

At first I thought that one of the files is some sort of leftover, because the phpDocs for the pico-3.0 branch were previously built with pre-releases of phpDocumentor v3 and they might have changed casing some time. But this doesn't seem to be the case: I just forced Travis CI to rebuild the phpDocs from scratch (see 4a0bfea and 025a0e1) and the current stable of phpDocumentor v3 created both default.html and Default.html again. I really have no idea why phpDocumentor is doing this. I'll check https://github.com/phpDocumentor/phpDocumentor later and possibly create a new issue there, can't see a reason for both files to exist.

In the meantime you can solve this by enabling case sensitivity on Windows. See e.g. https://stackoverflow.com/a/63490540

@mayamcdougall
Copy link
Collaborator Author

In the meantime you can solve this by enabling case sensitivity on Windows.

... ... ... 😱

Wow, you're right, I've been thinking about this backwards this whole time. 😅

I'm on a Mac these days (I know, what can I say... 😅), but I still like to keep my filesystems case sensitive from the decade I ran Linux.

I was so sure it was set to be case sensitive, that I didn't even consider the possibility I was getting everything backwards.

If my original comment sounded odd it was because I was assuming my filesystem was case sensitive and that... was just about where I stopped thinking about the problem. I was even rolling my eyes at the git error for being backwards about its explanation of what went wrong. 🤦‍♀️

I gotta figure out how to change that now. 🤔

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants