[squid-dev] Empty directories during bzr-to-git conversion

Eduard Bagdasaryan eduard.bagdasaryan at measurement-factory.com
Thu Jun 1 12:31:37 UTC 2017


Hello,

Working on upcoming bzr-to-git migration we noticed empty directories
presence in bzr history. Therefore, since git does not care about
directories (and creates them only for existing files), this conversion
does not exactly preserve bzr history and may theoretically cause
problems (e.g., build problems) for the affected revisions.
Fortunately, there were probably few such cases in the whole history
and all of them are old. Our analysis for Squid trunk showed the last
such revision is 9440 dated 2009-01-18, containing empty
'errors/Japanese' folder. Here is the generated list for trunk:

errors/Japanese, r9401-9440
errors/Czech, r9436-9438
lib/cppunit-1.10.0/contrib, r6693-8121
lib/cppunit-1.10.0/include/msvc6, r6693-8121
lib/cppunit-1.10.0/src/msvc6, r6693-8121
helpers/external_acl, r5495-5516
helpers, r5482-5494
helpers/external_acl, r5482-5494
helpers, r4765-5481

There are 2 possible ways to address this problem:

1. Leave as is.
2. During conversion, add dummy files to the history when the empty
    directory is created and remove those dummy files when the empty
    directory is either removed or becomes non-empty. This requires extra
    development cycles.

Note that both the missing (empty) directories and extra dummy files may
break builds for the related revisions.

If nobody is against, to minimize development overhead,
we are going to follow (1) in the above plan.

Thanks,

Eduard.



More information about the squid-dev mailing list