如何解决yarn.lock中的Git冲突

w41d8nur  于 2023-01-24  发布在  Git
关注(0)|答案(4)|浏览(251)

当多个Git分支修改了一个使用Yarn的项目中的依赖项时,很可能会在yarn.lock文件中引入冲突。删除并重新生成yarn.lock文件并不是一个好主意,因为这可能会导致多个包被无意中升级。快速解决该文件中冲突的最佳方法是什么?

mklgxw1f

mklgxw1f1#

Since Yarn 1.0很简单,因为它内置了对这种情况的支持。
首先手动解决package.json中的冲突,然后运行以下命令:

$ yarn install

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

然后冲突将被解决,你可以提交,或继续重建基地,如果这是你正在做的。

neskvpey

neskvpey2#

一个好的方法在github关于这个问题的讨论中有详细的介绍。

git rebase origin/master

当第一个冲突出现时,我 checkout yarn.lock,然后重新执行安装

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

这将基于yarn.lock的原始/主版本生成一个新的yarn.lock,但包括我对package.json所做的更改。

git add yarn.lock
git rebase --continue
1aaf6o9v

1aaf6o9v3#

如果“装纱”不管用

1) git checkout <target branch>
2) git pull
3) git checkout <our branch with conflict>
4) git merge <target branch> (you will see merge conflict on yarn.lock)
5) rm yarn.lock
6) yarn
7) git add yarn.lock
8) git commit -m
9) git push
bksxznpy

bksxznpy4#

这个文件是太长,所以如果你需要检查冲突在vscode没有终端也许你可以尝试到一个搜索在这个文件中为这样的条件:>>>>>>>=======<<<<<<<HEAD

相关问题