バックRailsを切り分けていたのだが此度マイクロサービスからモノレポになった(なんかこの流れ最近よく見る気がする)。こだわりはないのでそれ自体はいいのだが、問題点がいくつか出てきた。frontend間での共有gittree?というGUIでhuskyが干渉して壊れたこのうち、1と2を解消できたので手順を書く。3はGUIを使用してるのが1人だけだったのでCUIでgit操作してもらうことで事なき(?)を得てる。commitする前に任意のコマンドを自動で実行できて、大抵の場合はcommitする前にprettier/eslintでファイルのフォーマット/エラー検知をするのに利用する、以上。addしたファイルの中にfrontendがなくてもhuskyで設定したpre-commitのアクションが走るようになった。具体的にはprettierとESLintなのだが、プロダクトの規模が中〜大なので監視対象のファイルが200以上は優にあり、commitした時にそれらのファイルをずらっと検証していくのはバックエンドの人からしたら「なんでフロントいじってないのにフロントの検証のために待たなきゃいけないんだ」感あるのは想像に易いので修正する必要があった。修正方法シェルスクリプト書いたことないけどそれでないと対応できなそうなので頑張った。ここはお好きなコマンドで。pre-commitを走らせている。lint-stagedにするなり環境に合わせて修正の必要あり。正規表現できちんとフィルタリングしようと思ったが一部ケースでエラーが出たのでif文で制御することにした。backend/にfrontend/という接頭辞のつくファイルはまずないだろうし、仮にあったとしてもバックエンドのcommitの時にprettierが走ってしまうだけでそこまでクリティカルでないので問題に直面してからの対応にすることにした。v7以上(latest)とかで動作確認済みで数年前のv5だったかとは色々勝手が違かった気がするのでそこはご留意ください。devみたいな方法で使用する(「一つのウィンドウでフロント/バック見渡せる」にモノレポの恩恵の多くも詰まってる気がするので)。なると今度は~/frontend/.vscode/settings.jsonは効かなくなってしまい、.vscodeディレクトリをルート直下に持ってくる必要が出てくる。フロントとバックで同じ.vscodeディレクトリを参照するという具合。なるとフロント用の設定がバックに影響してしまう可能性がある。修正方法ひとまずこれを暫定的な対処法とすることにした。}}バックではrbファイルのみだしだしフロントではtsファイルのみなので、拡張子で適用するルールをラップする方法。当面はこれでいいのかなって感じで他にいい方法見つけ次第そちらに移そうと思う。特定のディレクトリに変更があるときだけhusky(prettier)を走らせるMontereyのsocket周りでのエラーPrismaのmigrateのエラーが出たときの対処法Prismaのseedでimportのエラーが出たときの対処法Liffをローカルで開発する方法クロサイ個人開発が好きなWebエンジニア(H6年生)。ブログ4年目に突入(2018/09~)しました。過去のブログは数十万で売却済み。当ブログは月間5万PVくらい。前は池袋でメディアの運用/保守/開発/SEO・MEO施策などのWebマスター的なことしてました。今は神田で自社製品の開発に携わってます。