2017-03-21 4 views
3

他の種類のユーティリティファイルと同じ種類の設定ファイル(例:.eslintrc.babelrckarma.conf.js)の多くを共有するいくつかのリポジトリがあります。私はこれらを抽出してすべてのリポジトリ全体でそれらを活用できるようになりたいと思っています。これを達成するための最良の方法は何ですか?複数のコードベースでkarma、eslintなどのファイルを共有

  1. 新しいレポを作成し、npmモジュールとして公開します。それをインポートし、必要に応じて使用しますか?
  2. 基本的に必要なファイルを生成するCLIツールを作成しますか?
  3. シンボリック?
  4. 他にもありますか?

私はオプション1が理想的だと思っていますが、エクスポートされていないファイルをどのように参照できるかわかりません。たとえば、このnpmモジュール内のファイル.eslintrcをどのように使用するのですか?

答えて

3

CIサーバーでビルドとテストを実行する必要がある場合、symlinkはうまく動作しませんが、複数のパッケージをmonorepoでラップするlernaを調べる価値があります。

私はCLIのアプローチを試しましたが、必要に応じてpackage.jsonにドロップするプライベートのnpm「マイクロ」モジュールで終わりました。それはあなたがCLIは

  • それを自分自身を更新してみましょうするためにいくつかのメカニズムを構築する必要があり、すべてのチームメンバーは、自分のマシン
  • にインストールする必要がありグローバルな依存関係を紹介し

    • :何CLIで間違っていた

      NPMモジュール内から特定の.eslintrcを使用するには、プロジェクトへの抽象層

    を追加し、あなたは--config ARをeslint渡すことができますgにあなたの.eslintrcパスを入力します。

    これらのツール(eslint、babel、karma、mochaなど)は設定や更新に苦労することがあるので、代わりにコードベースを自己完結させ、代わりに設定ファイルを複製することをお勧めします抽象化層を持つこと。

  • 関連する問題