package.json の dependencies がlatest
で追加されていた。
latest だと常に最新のパッケージをとってきてしまうので、開発時のバージョン指定を行う。
目次
package.jsonを更新してバージョン指定する
syncyarnlock
コマンドを利用します。-h
オプションをつけることでヘルプを参照できます。
$ npx syncyarnlock -h
Usage: syncyarnlock [options]
Sync `yarn.lock` package versions, into package.json
Options:
-V, --version output the version number
-d, --dir <path> directory path where the yarn.lock file is located (default to current directory)
-p, --dirPackageJson <path> directory of project with target package.json, if not set, -d will be used
-s, --save By default don't override the package.json file, make a new one instead package.json.yarn
-k, --keepPrefix By default the ^ or any other dynamic numbers are removed and replaced with static ones.
-g, --keepGit By default direct git repositories are also replaced by the version written in yarn.
-l, --keepLink By default direct link: repositories are also replaced by the version written in yarn.
-a, --keepVariable <variable> By default everything is converted to yarn version, write a part of the type you wish not to convert, seperate by comma if more than one, to not replace git and link you would use +,link:
-h, --help output usage information
-s
でpackage.jsonを更新。-k
で静的なバージョン指定に置き換えます。
$ npx syncyarnlock -s -k
このコマンドを実行すると、処理しても良いかのメッセージが出るので「y」を入力してエンターします。
$ npx syncyarnlock -s -k
Need to install the following packages:
syncyarnlock@1.0.19
Ok to proceed? (y)
下記のようにメッセージが出たら成功です。
Saved /package.json
Summary
こうすることで、latestで指定されていたものが、現時点のバージョン指定に変更することができる。