118 votes

Comment résolvez-vous les conflits de git dans yarn.lock

Lorsque plusieurs branches de git modifient les dépendances dans un projet utilisant Yarn , il est probable qu'un conflit se produise dans le fichier yarn.lock. Ce n’est pas une bonne idée de supprimer et de régénérer le fichier yarn.lock car cela entraînerait probablement la mise à niveau involontaire de plusieurs paquets. Quel est le meilleur moyen de résoudre rapidement les conflits dans ce fichier?

237voto

Vanuan Points 4751

Depuis Yarn 1.0, c’est simple, car il est doté d’un support intégré pour ce scénario. Il suffit de lancer ceci:

 $ yarn install

yarn install v1.0.1
info Merge conflict detected in yarn.lock and successfully merged.
[1/4] Resolving packages...
 

Maintenant, il ne vous reste plus qu'à faire git add yarn.lock && git rebase --continue

69voto

Une bonne approche est détaillée dans cette github discussion sur la question.

git rebase origin/master

Lorsque le premier conflit survient, je checkout l' yarn.lock puis de le ré-effectuer l'installation

git checkout origin/master -- yarn.lock 
yarn install

Cela génère un nouveau yarn.lock basé sur l'origin/master version de fil.de verrouillage, mais y compris les modifications que j'ai apportées à mon package.json. Ensuite, c'est juste une question de:

git add yarn.lock
git rebase --continue

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X