15

木の構造

これが私のNode.jsプロジェクトの構成方法です。

/
| - node_modules               [+ INCLUDE]
|   | - my-mod1
|   |   | - node_modules       [- IGNORE]
|   |   |   | - external-mod1 
|   |   |   | - external-mod2 
|   |   | - src
|   |   |   | - node_modules   [+ INCLUDE]
|   |   |   |   | - my-mod2 
|   |   |   |   | - my-mod3
|   | - my-mod4

私の計画

プロジェクトをGitHubに公開する場合:

  • sを含めたいmy-mod
  • sを含め たくありませんexternal-mod

つまり、次のことを意味します。

  • トップレベルのフォルダを含めたい/node_modules
  • モジュールフォルダの直接の子であるフォルダを含めたくありません。node_modules
  • ただし、フォルダーの子であるフォルダーを含めたいと思います。node_moduelssrc

私がしたこと

次の行を追加しました/.gitignore

#################  
## npm
#################

npm-debug.log
node_modules/
!/node_modules/
!src/node_modules/

私の質問

(上記のように)適切なフォルダを含める必要がある.gitignoreルールはどれですか?node_modules

ありがとう-不明な点があればコメントしてください。

4

4 に答える 4

15

構造が非常に整理されているため、このパターンを使用してタスクを実行できます。

/node_modules/*/node-modules/ 

上記のパターンは、モジュールフォルダーmy-mod1、my-mod4などの下のnode_modulesを無視します。

上記の行では、githubにプッシュしたときに、srcディレクトリの下のnode_modulesを含めることができます。

于 2013-02-20T14:03:25.737 に答える
8

node_modules/**/node_modulesあなたがやろうとしていることのために働くはずです。

ヒント:GitHubは、 Node.gitignoreなどのさまざまな言語の標準を提供します。

于 2013-02-19T16:44:14.983 に答える
4

回答ありがとうございます。

私は条件を再考し、別の方法で条件を宣言することにしました-それは完全に機能します:

node_modules/*/node_modules

これが将来誰にでも役立つことを願っています。

于 2013-02-23T15:19:18.600 に答える
0
node_modules/*
!node_modules/**/node_modules

多分?

于 2013-02-19T16:41:43.447 に答える