2017-03-21 48 views
21

Gdy wiele gałęzi git modyfikuje zależności w projekcie, który używa Yarn, prawdopodobnie spowoduje konflikt w pliku yarn.lock. Nie jest dobrym pomysłem usuwanie i regenerowanie pliku yarn.lock, ponieważ prawdopodobnie spowoduje to nieumyślne uaktualnienie kilku pakietów. Jaki jest najlepszy sposób na szybkie rozwiązanie konfliktów w tym pliku?Jak rozwiązać konflikty git w yarn.lock

Odpowiedz

39

Since Yarn 1.0 łatwo. Wystarczy uruchomić to:

$ yarn install 

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

Teraz trzeba tylko zrobić git add yarn.lock && git rebase --continue

+0

nie wierzę, to działa, czy istnieją konflikty w swoim 'yarn.lock' zawierający linii kodu, takich jak' ==== ======== ',' >>>>>>>>> ',' <<<<<<<<<<<<< '. Nadal musisz robić, o czym mówi odpowiedź Christine Schlensker. – theGreenCabbage

+9

@theGreenCabbage nie wierz, spróbuj – Vanuan

+0

Nie działa, zgłasza 'błąd Wystąpił nieoczekiwany błąd:" Nieznany token 7713: 1 in/location' –

23

Dobre podejście jest szczegółowo opisane w numerze this github discussion.

git rebase origin/master 

Kiedy powstaje pierwszy konflikt, ja kasy yarn.lock ponownie wykonać instalację

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

To generuje nowy yarn.lock na podstawie wersji pochodzenie/mistrzowskiej yarn.lock , ale , w tym zmiany wprowadzone do mojego package.json. Wtedy to tylko kwestia:

git add yarn.lock git rebase --continue