onicjapan / onicjapan.github.io

A clean and modern Jekyll theme based on Bulma
http://www.csrhymes.com/bulma-clean-theme/
MIT License
3 stars 0 forks source link

archives/[2014,2015] 下のいくつかの img 下のファイルが not found になる #69

Closed mshindo closed 2 months ago

mshindo commented 2 months ago

例えば、https://www.onic.jp/archives/2014/sponsors/ で、ジュニパー、日立、ブロケードのロゴイメージが表示されない。

mshindo commented 2 months ago

なぜか 2014 or 2015 のブランチを checkout すると、何も変更していないのにもかかわらず、ファイルがいくつか "modified" になってしまう現象が出ました。例えば、2014 を checkout すると

❯ git checkout 2014                                         
Updating files: 100% (256/256), done.
branch '2014' set up to track 'origin/2014'.
Switched to a new branch '2014'

❯ git status       
On branch 2014
Your branch is up to date with 'origin/2014'.

Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git restore <file>..." to discard changes in working directory)
    modified:   img/BROCADE.jpg
    modified:   img/HW.jpg
    modified:   img/Hitachi.jpg
    modified:   img/Juniper.jpg

no changes added to commit (use "git add" and/or "git commit -a")

こんな感じになってしまいます。実際に img の下に checkout されるファイルは小文字になってしまっていました。

MacOS や Windows のファイルシステムは大文字小文字を区別しません(保持はします)。一方、Linux では大文字小文字の区別をします。今までは Mac/Windows で作業をしていたので、このような問題はありませんでしたが、今回谷口さんは CentOS 上で作業をされたため、2014/2015 ブランチのみこのような事象が出たのではないかと思います。

私は Mac で作業をしていて、小文字になってしまったファイル名のまでも問題なくローカルで preview できてたため、そのまま archives に突っ込んでしまいましたが、GitHub Pages はおそらく Linux でホストされていて、大文字小文字を区別するので、 「イメージが見つからない」という状況になっているのだと思われます。

本来は 2014/2015 のレポジトリを修正して、この大文字小文字問題が出ないようにするのが筋ですが、2014/2015 年に限った話ですので、今回は 2024 ブランチの archives を直接修正しようと思います。

mshindo commented 2 months ago

なぜ全てのファイルではなく、img の下の一部のファイルだけにこのような事象が出るのか、よくわかりません。これらのファイルに他のファイルとは何か違った操作を行ったような記憶はありますでしょうか? > @tom-taniguchi

mshindo commented 2 months ago

61a7f4b3543ac670bc6b5da11a85a79716e90e70 及び 7702efbdde21b1890cc3a16245a3e049a4ffc8d6 で修正済です。

ただ、上記の点に関するコメントが得られるまで本 issue は開けておくことにします。

tom-taniguchi commented 2 months ago

@mshindo 確認が遅くなり申し訳ありません。記憶があやふやでどのような操作を行ったかが曖昧です。 ただ、BROCADE,VMWのファイル名は何かの理由で特殊な操作をした憶えがあります。

今確認したところ、以下の条件だった場合に起きた模様です。 ・旧アーカイブの画像ファイルの名前が、大文字小文字の両方のパターンがあった場合 ・2014、2015の作成にあたり画像ファイルを纏めた(GUI上でのコピーでは大文字小文字の判定は行わず上書きされる模様) ・ymlファイル作成時に画像ファイルの名前を統一した(ファイル名を変えたか、ymlの指定を変えたかは憶えていません)

例)BROCADE

2014 /images : BROCADE.jpg 2015 /images : brocade.jpg /archive/2015/image : brocade.jpg

例)VMWare

2014 /images : VMW.jpg 2015 images : VMW.jpg /archive/2015/image : vmw.jpg

mshindo commented 2 months ago

なるほど。。ちょっと正確な発生条件が分かりませんが、次にまたこのような事象が発生したら、その時に詳しく調べましょう。

ということで、本 issue はとりあえず close とします。