Is my repository broken?
From: Julian Phillips <hidden>
Date: 2016-06-15 22:44:27
Having just converted a subversion repository to git using a custom fast-import based script, I realised that I had forgotten to add some users to the mapping table - so I thought that filter-branch would save me from having to redo the 72hr import. At which point I discovered that I had a number of commits that git didn't like. In particular I had a number of commits with an empty ident, and a number with more than 16 parents (actually mostly these are the same commits - but I don't think that's relevant). When filter-branch tries to process these commits it can't commit them - and so I end up losing a number of refs. I can fix the empty ident using the msg-filter in filter-branch, and I can work around the 16 parent limit by building a custom git with MAX_PARENT = 32. However - will having commits with more than 16 parents break things for un-modified git? The commits in question were originally created in CVS, so the parenting is kinda 'real' for some value of real - but we are talking revision 4000/40000, so I don't mind arbitrarily limiting the commits to 16 parents, but I would prefer to avoid redoing the 72hr import if possible. (Perhaps I can also 'fix' the parenting in filter-branch?) Also, shouldn't fast-import be imposing the same restrictions on what you are allowed to commit that the main git tools do? If not, are such restrictions documented so that I can apply them in my conversion script? (28G Subversion repository to 7.1G git repository (before repacking) ... not bad :D) -- Julian --- Agnes' Law: Almost everything in life is easier to get into than out of.