When updating files with different file name capitalization, the old file name capitalization is kept
hendriks73 opened this issue · 2 comments
Describe the bug
When the capitalization of a file name deployed via the plugin changes, it is not accessible under the new capitalization, but only the old. Also the capitalization in the branch is not changed and stays wrong. Most likely this has to do with GitHub using a case insensitive file system.
Reproduction Steps
- 1st run: a file called
AirPlayDevice.html
is pushed togh-pages
branch and can be accessed underAirPlayDevice.html
. Great! - 2nd run: the file name's capitalization is changed to
AirplayDevice.html
. When trying to access the file underAirplayDevice.html
, a 404 is returned. When trying using the (now wrong!) nameAirPlayDevice.html
the correct file is returned. In thegh-branches
branch, the capitalization is now wrong (no lowercasep
).
Note that the file is generated freshly before calling github-pages-deploy-action. So the problem definitely occurs when merging changes into the target branch.
Additional Comments
You might want to check desktop/desktop#2672
Perhaps this could be fixed by setting
git config core.ignorecase false
before merging. I understand this is not something everybody would want, but it would be nice, if it was optional.
Perhaps this issue could also be worked around by users of your action by calling
git config --global core.ignorecase true
before running it.
Adding
git config --global core.ignorecase true
to the workflow didn't seem to help.
This is resolved in 4.2.0. It's suggested that you update the casing on your files using the git mv
command instead of globally setting ignorecase
in your configuration unless you absolutely need to.
git mv -f index.html InDeX.html
The action will now commit any case changes as it sets ignorecase
internally within the workflow runs so it should pick up any committed case changes.
I'm not going to activate this option behind a flag as it shouldn't effect 99% of users, but should it cause problems I may re-evaluate.