因为逗号无法添加到对象的最后一个元素或package.json中的数组中,所以行保留未保留;也就是说,如果我在提交A:
中的package.json中有以下内容{
"version": "0.0.1"
}
然后在提交B中我添加另一个字段:
{
"version": "0.0.1",
"main": "index.js"
}
git blame package.json
显示这两行都被提交B指责。如果我在提交A中的第一个字段定义的末尾添加逗号,则会保留责任:
{
"version": "0.0.1",
}
但这不是有效的JSON,或者至少npm不允许这样做。执行此操作然后运行npm install
将引发此错误:
npm ERR! install Couldn't read dependencies
npm ERR! Failed to parse json
npm ERR! Unexpected token } ...
有没有办法解决npm错误?或者是否有一种聪明的方法来使用git blame看到提交A应该归咎于第一个字段?
答案 0 :(得分:-1)
在JS Object Notation(JSON)中,所有对象属性(名称 - 值对)由,
分隔。
因此,如果您只有一个属性,则最后不需要额外的,
。
我的观点是,在提交B行"version": "0.0.1"
中,通过添加,
进行了更改。责备工作正常。在git中,这是一个全新的不同行,取代了之前的行。