複数のgitブランチが Yarn を使用するプロジェクトの依存関係を変更する場合、yarn.lockファイルに競合が発生する可能性があります。 yarn.lockファイルを削除して再生成することはお勧めできません。これにより、いくつかのパッケージが意図せずにアップグレードされる可能性があります。このファイルの競合を迅速に解決する最良の方法は何ですか?
Yarn 1.0以降 このシナリオのサポートが組み込まれているため、簡単です。これを実行するだけです:
$ yarn install
yarn install v1.0.1
info Merge conflict detected in yarn.lock and successfully merged.
[1/4] Resolving packages...
これで、必要なことはgit add yarn.lock && git rebase --continue
良いアプローチは このgithubの議論 問題について詳しく説明されています。
git rebase Origin/master
最初の競合が発生したら、
yarn.lock
をチェックアウトしてから、インストールを再実行しますgit checkout Origin/master -- yarn.lock yarn install
これは、Origin/masterバージョンのyarn.lockに基づいて新しい
yarn.lock
を生成しますが、package.json
に加えた変更を含みます。それはただの問題です:git add yarn.lock git rebase --continue