Flutterのビルド時に使うツールやコマンドをまとめたメモまとめ

Flutterのビルド時に使うツールやコマンドをまとめた以前書いたメモのまとめです
これは初心者が勉強のためにまとめたメモなので、間違えている場合があります
gemとは
RubyGemsが公開しているパッケージのこと。ライブラリを公開したりできるRubyGemsそのもののことを呼ぶ時もある
bundlerとは
bundlerは"gemfile"と"gemfile.lock"に従ってgemの依存関係とともに 、gemを管理をするライブラリ
インストールしているgemが別のgemを使用していることがあるので依存関係と一緒にインストールする
gemfileとは
使用するgemとバージョンを記載したファイル
gemfile.lockとは
依存関係含めインストールしたgemをバージョンとともに指定したファイル
rbenvとは
プロジェクトごとにrubyのバージョンを指定、切り替えできるツール
入れていないと一つのPCで一個のバージョンしか入れられない
bundlerにおけるpodって?
cocoapods自体のバージョンが上がってしまうので、勝手に上がってしまって、動かなくなってしまうことを防ぐためにそのバージョンを固定するためにbundlerで管理する
pod installするときは bundle exec pod install
のコマンドを使う
bundle execって?
gemfile.lockに基づいた環境でコマンドを実行するためにつける
つけないとgemfile.lockに基づかずに、コマンドが動いてしまうのでgemのバージョンがおかしくなってしまう
cocoaPodsって?
swiftのライブラリを管理してくれるツール
rubyで動くので、そのためにbundleだったりrubyを使っている
podコマンドをつける
コマンドって?
このツールを使いますよって宣言するために最初につける
git pod とか
Cocoapods の pod install コマンドとは
podfileに書いたライブラリをpodfile.lockに書かれたバージョンに合わせてインストールしてくれる
podfile.lockって?
pod install
するたびに自動生成されるファイル
インストールしてあるパッケージのバージョンを記載し、勝手にアップデートされて動かなくならないようにする
pubspec.yaml とは
プロジェクトの名前や説明、使うパッケージを載せるFlutterの説明ファイル
Flutterのパッケージの依存関係って何を指している?
プロジェクトが正常に動作するために必要なパッケージやライブラリのこと
依存関係はpubspec.yamlに記載する
flutter pub get コマンドとは
pubspec.yamlに記載してあるパッケージをダウンロード、インストールしてくれるコマンド
パッケージ同士のコンフリクトがないかも一緒に確認してくれる
git submodule何か
別リポジトリを現在のプロジェクトに追加することができる
外部のリポジトリを現在のリポジトリにサブモジュールとして追加することで参照できる
追加したサブモジュールも編集することができる
別のリポジトリとして独立してるから管理が楽になるらしい
git submodule update
git configというgitの設定内容が書かれているものを参照してsubmoduleをクローンする
git submodule init
git configというgitの設定内容が書かれたものにsubmoduleを追加する
git submodule deinit
configから削除する
git initとは
新しくリポジトリをつくる
ランタイム
プログラムを実行する時のこと
その時のコードかもいう
おわりに
flutterはrubyいらない
→Androidアプリだけビルドならいらない
cocoapodsにはrubyで書かれているからrubyで動かす
コマンドやファイルの内容があやふやだったのでまとめました!難しい!