set firestore merge code example
Example: set firestore merge
The way I understood the difference:
set without merge will overwrite a document or create it if it doesn't exist yet
set with merge will update fields in the document or create it if it doesn't exists
update will update fields but will fail if the document doesn't exist
create will create the document but fail if the document already exists
There's also a difference in the kind of data you provide to set and update.
For set you always have to provide document-shaped data:
set(
{a: {b: {c: true}}},
{merge: true}
)
With update you can also use field paths for updating nested values:
update({
'a.b.c': true
})