Am 10/8/2010 9:05, schrieb Jonathan Nieder: > Johannes Sixt wrote: >> Am 10/7/2010 22:28, schrieb Jonathan Nieder: > >>> | For a command (like filter-branch --subdirectory-filter) that wants >>> | to commit a lot of trees that already exist in the object db, writing >>> | undeltified objects as loose files only to repack them later can >>> | involve a significant amount[*] of overhead. >> >> 1. But when an object already exists in the db, it won't be written again, >> will it? > > In David's application, the trees already exist, but the commits are new. But then what has this to do with "allow filemodify to set the root"? > I suppose supporting M 040000 <tree> "" and C <path> "" could still > be a good idea in that case anyway, for the convenience of front-end > authors. What is the special new thing here? That "" means 'empty string' == 'tree at the root'? If so: 1. Then this is the missing piece in the justification. Then I could buy that the observed speed-up is due to the reuse of an existing tree object (which avoids parsing it and re-constructing it from its pieces because fast-imports syntax didn't allow it otherwise). But it has nothing to do with new loose objects (the re-constructed object would be identical to an existing one). 2. Without this patch, would this syntax create a tree object with a name consisting of two double-quotes in the root? Or would it be a syntax error? How would one construct such an entry with this patch? -- Hannes -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html