Cuando varias ramas de git modifican las dependencias en un proyecto que usa Yarn , es probable que se produzca un conflicto en el archivo yarn.lock. No es una buena idea eliminar y volver a generar el archivo yarn.lock porque esto probablemente hará que varios paquetes se actualicen involuntariamente. ¿Cuál es la mejor manera de resolver rápidamente los conflictos en este archivo?
Desde Yarn 1.0 es fácil porque tiene soporte integrado para este escenario.
Primero resuelva el conflicto en package.json manualmente, luego simplemente ejecute esto:
$ yarn install yarn install v1.0.1 info Merge conflict detected in yarn.lock and successfully merged. [1/4] Resolving packages...Y luego el conflicto se resolverá y puedes cometer eso o continuar rebasando si eso era lo que estabas haciendo.
Se detalla un buen enfoque en esta discusión de github sobre el problema.
git rebase origin/masterCuando surge el primer conflicto, compruebo
yarn.locky luego vuelvo a realizar la instalación.git checkout origin/master -- yarn.lock yarn installEsto genera un nuevo
yarn.lockbasado en la versión origin/master de yarn.lock, pero incluye los cambios que hice en mipackage.json. Entonces solo es cuestión de:git add yarn.lock git rebase --continue
este archivo es demasiado largo, por lo que si necesita verificar el conflicto en vscode sin terminal, tal vez pueda intentar buscar en este archivo términos como: >>>>>>> , ======= , <<<<<<< o HEAD