在组建的团队中,我通常会在包锁中遇到合并冲突。json
而我的快速修复方法一直是删除该文件并使用npm install
重新生成它。我没有认真考虑过这个修正的含义,因为它以前没有引起任何可察觉的问题。
删除文件并让npm
以这种方式重新创建文件而不是手动解决冲突是否有问题?
我知道这是一个老问题,但对于未来的寻求者,你也可以使用npm-merge-驱动程序,尝试自动解决npm相关文件的合并问题。
只需将其安装到全局npx npm-merge-驱动安装--global
。你可以在这里阅读更多关于它的npm-合并-驱动程序
编辑:只是想警告那些对使用上述包感兴趣的人,有时它会表现不稳定,难以删除。所以虽然它是一个有用的工具,但它仍然需要一些工作。
编辑:此存储库现在存档并只读。
是的,它可能有不良副作用,可能不经常,但例如,你可以在包装。json“moduleX”:“^1.0.0”
,您以前在包锁中有
。“moduleX”:“1.0.0”
。json
通过删除package-lock.json
并运行npm安装
,您可能会在不知道的情况下更新到moduleX的1.0.999版本,也许他们已经创建了一个错误或做了一个向后中断的更改(不遵循语义版本)。
无论如何,已经有了一个标准的解决方案。
package.json
npm安装-包锁-仅
查看此链接了解更多信息:
https://docs.npmjs.com/cli/v6/configuring-npm/package-locks#resolving-锁文件冲突
是的,它会以非常糟糕的方式影响所有的项目。
>
如果你的团队没有运行npm安装
后,每个git拉
你都使用不同的依赖版本。所以它以“但它对我有用!!”结束“我不明白为什么我的代码对你不起作用”
即使所有团队都运行npm安装
,也并不意味着一切都正常。在某个时刻,您可能会发现您的项目的行为有所不同。在一个你已经多年没有改变的地方。在调试之后(可能是相当痛苦的),您会发现这是因为第三级依赖项已更新为下一个主要版本,这导致了一些突破性的更改。
结论:永远不要删除包锁。json
。
是的,对于第一级依赖项,如果我们在没有范围的情况下指定它们(如“反应”:“16.12.0”
),我们每次运行npm安装
都会得到相同的版本。但是我们不能对2级深的依赖(我们依赖的依赖)说同样的话,所以package-lock.json
对于稳定性非常重要。
在您的情况下,您最好采用下一种方式:
包中的冲突。json
看起来很容易。纱线也是如此——它自己修复了锁文件冲突。这里唯一的要求是提前解决package.json
中的所有冲突(如果有的话)。
每文档npm将修复package-lock.json
中的合并冲突。
[2021年的Upd]重要!如果您已经使用了某个库,并且其维护者的npm/GitHub帐户被黑客攻击。并且发布了包含恶意代码的新版本。你有包锁。json
完好无损。你会没事的。如果你把它扔了,你就有麻烦了。
问题内容: 通常,在建立团队的过程中,我遇到了合并冲突,而我的快速解决方案一直是删除文件并使用重新生成文件。我没有认真考虑此修复程序的含义,因为它以前没有引起任何可察觉的问题。 删除文件并以这种方式重新创建而不是手动解决冲突是否存在问题? 问题答案: 是的,它可能并且将以非常糟糕的方式影响所有项目。 如果您的团队在每次使用后都没有运行,则你们都使用不同的依赖项版本。因此,其结尾为“但对我有用!!”
本文向大家介绍pycharm 快速解决python代码冲突的问题,包括了pycharm 快速解决python代码冲突的问题的使用技巧和注意事项,需要的朋友参考一下 找到冲突的文件(项目中报红的就是冲突文件),如下 :以下是一个标准的冲突表 说明 * : <<<<<<< HEAD 到 =======里面的内容是自己分支commit的内容 =========到 >>>>>>里面的内容是远程下拉的 根据
问题内容: 假设我们有一个包含一个类的软件包(以及其他类)。 然后,我们还有另一个包含一个类的包(显然具有不同的行为)。 现在假设我们需要com.example1中的每个类和com.example2中的Hello类 在这种情况下,哪个被叫? 还是这会产生编译错误? 出于好奇,这只是一个理论问题。 由于创建软件包是为了避免命名冲突,所以当两个软件包包含两个具有相同名称的类时会发生什么? 问题答案:
本文向大家介绍python3.8与pyinstaller冲突问题的快速解决方法,包括了python3.8与pyinstaller冲突问题的快速解决方法的使用技巧和注意事项,需要的朋友参考一下 安装pyinstaller 安装的时候 进入cmd pip install pyinstaller 发现安装报错! 解决办法: # 自主下载pyinstaller包,进行手动安装 pyinstaller 的下
本文向大家介绍onclick和onblur冲突问题的快速解决方法,包括了onclick和onblur冲突问题的快速解决方法的使用技巧和注意事项,需要的朋友参考一下 新浪首页的搜索框里面有一个使用ajax的下拉框。我们需要实现一个点击下拉框里面的一项,让搜索框里面的值变成这一项,同时下拉框消失的效果,但同时在点击其他地方的时候,这个下拉框也要消失。大致如图: 我们同时使用onblur和onclick
本文向大家介绍快速解决js开发下拉框中blur与click冲突,包括了快速解决js开发下拉框中blur与click冲突的使用技巧和注意事项,需要的朋友参考一下 在开发中我们会经常遇到blur和click冲突的情况。下面叙述了开发中常遇到的“下拉框”的问题,并提供了两种解决方案。 一、blur和click事件简述 blur事件:当元素失去焦点时触发blur事件;其为表单事件,blur和focus事件