35

これは Python では慣用的です。

pip freeze > requirements.txt
pip install -r requirements.txt

最初のコマンドは、要件のリストをファイルに保存します。その後、コマンドを使用して要件を環境にインストールできます。

ノードにはnpm installがありますが、依存関係の状態を package.json にダンプする方法がわかりません。私はグーグルでこれを見つけまし

npm ls | grep -E "^(├|└)─" | cut -d" " -f2 | awk '{FS = "@"; print "\""$1"\"", ":", "\""$2"\""}'

しかし、このパイプラインの作成者が示唆しているように、もっと良い方法があるはずです? ここで何が欠けていますか?

現在の deps を package.json にダンプしたいだけです。https://npmjs.org/doc/shrinkwrap.htmlが言うように、

「npm install」を使用する場合は、「package.json」ファイルが引き続き必要です。

の情報をざっとshrinkwrap見ましたが、このタスクを で簡単に達成する方法がわかりませんshrinkwrap

4

5 に答える 5

19

これは私が得た最も近いものです

npmフリーゼロール

npm ls | grep -E "^(├|└)─" | cut -d" " -f2 | awk -v quote='"' 'BEGIN { FS = "@" } ; { print quote $1 quote,":",quote $2 quote"," }' | sed -e 's/ :/:/g'

出力は次のようになります

  "bower": "1.3.12",
  "chai": "2.1.2",
  "cucumber": "0.4.8",

最後の末尾のカンマをまだトリミングする必要がありますが、かなり近いです!

于 2015-05-15T10:20:18.267 に答える
14

を使用して、現在インストールされているパッケージから package.json を作成できますnpm init。次に、package.json を簡単に移動して、必要npm installな場所にパッケージをインストールするだけです。

于 2013-07-10T17:58:57.803 に答える
12

これはおそらくあなたのために働くでしょう。npmシュリンクラップ

npm shrinkwrap
于 2014-05-30T04:58:48.560 に答える