dockerでrails newしたときによくわからないファイルたちを調べてみる
dockerでrails6.1.4を使うために、色々調べて、rails newをした。
そしてたら、なんのためにあるのかわからいファイルが多すぎてちょっと焦tった...
このままだと、分からん地獄に陥りそうなので、ザックリと調べて、自分が今度焦らないようにメモを残しまっっ!
.browserslistrc
これは、どのブラウザに対応するかを決めるファイル
AutoprefixerでCSSにどのベンダープレフィックスを付けるかを決めることfができるらしい。
ちなみに、ベンダープレフィックスとは...
「ベンダープレフィックス(Bender Prefix)」とは、"Google Chrome" や "Mozilla Firefox"、"Safari" といったブラウザーのベンダーがCSS3の拡張機能を実装するのに使用する識別子のことです。 プレフィックス(Prefix)の意味は「接頭辞」です。CSS3のプロパティの接頭辞として「–webkit-」や「–moz-」を付けて「草案段階(WD:Working Draft)」のCSS3の仕様を先行して実装するときに利用します。
https://proengineer.internous.co.jp/content/columnfeature/6691より引用
-webkit-などをつけないとうまくブラウザで動かないとは...
なので、CSS3に対応していないであろうブラウザが予想されるときは下記のようにコードを書いていたみたいですね。
.example {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
}
引用元:https://d-fount.com/benderprefix-and-autoprefixer/
こんなの、一つずつ記述しなきゃいけないと思うと気が遠くなりそう。
ここで、ベンダープレフィックスを解決してくれるのが、Autoprefixerです!
Autoprefixerとは...
ベンダープレフィックスに対応させたいブラウザを設定すると、自動でベンダープレフィックスを行ってくれるツールのこと。
本題に戻って...
.browserslistrcは、どのブラウザにAutoprefixerするかというもの。
rails newの段階では、.browserslistrcの中身は、
defaults
これだけ(笑)
これが何を表すか調べてみると、
defaultは、0.5%以上のシェア率があるブラウザの最新2バージョンと、
最新の「Firefox Extended Support Release」バージョンをサポートして、
過去24ヶ月以内にアップデートされていないものはサポートしないという意味だそう。
参考にさせていただいたサイト👇
https://qiita.com/takeshisakuma/items/0bc1c39ee976bd1f52d7
つまり、.browserslistrcは、Autoprefixerのサポート対象を選んでいるファイルということがわかりました!
.gitattributes
そのまま訳すと、「gitの属性」的な感じでしょうか...
これも調べてみると、
gitの改行コードなどの扱いを一緒にすることができる。これを用いることで、複数人開発のときに、改行コードの違いによる余計な差分などが生まれないそう。
他にも、こちらのサイトにあるように、checkout/add 時のフィルター指定や、差分生成の指定、マージ方法の指定ができるみたいです。
ちなみに、rails newしたときはこんな感じでした
db/schema.rb linguist-generated
yarn.lock linguist-generated
vendor/* linguist-vendored
これは、下記を表しているそうです。
・db/schema.rbとyarn.lockをプルリクの差分に含めないということ。
・vendorディレクトリの中のファイルは、gitの言語割合には含まれず、差分も含まれないということ。
babel.config.js
これは、Babel(JavaScriptコンパイラ)の設定のファイル。
Babelとは...ES6(JavaScriptの新バージョンみたいなもの)が、どのブラウザでも動くようにES6のコードをES5に変換する(コンパイラ)するツール
下記のサイトがめちゃわかりやすかった...😭
https://techracho.bpsinc.jp/hachi8833/2021_05_13/85940
つまり、これがあるおかげで、新しいJavaScriptでコードを書いても、安心ということですね!
config.ru
調べてみると、このファイルがないとrails sをしてもrailsが起動しないとのこと。
そして、これはRackのサーバ起動コマンドrackupの設定ファイルだということ。
詳しくは下記サイトに
https://hyottokoaloha.hatenablog.com/entry/2016/02/19/232216
まとめ
知らないファイルってあると結構不安になるので、今回調べてスッキリしました。
これからもわからない事は、調べていきます!!
この記事が気に入ったらサポートをしてみませんか?