Comment 12 for bug 818318

Revision history for this message
Alexander Regueiro (alexreg) wrote :

A bit of debugging with the actual bzr-git code (latest version) has revealed that the problem specifically stems from the fact that git does not version empty directories, and this create de-synchronisation with the bzr branch. Specifically, I believe that bzr-git creates a key (hex-sha?) entry for the empty directory in revision 1 of the test branch, but does not actually exist in the git branch. However, when trying to dpush revision 2, bzr-git tries to perform the file move/rename into a directory that the git branch does not yet have. Hence, I propose a fix should check for the existence of all parent directories of a file-move target before performing the move. Let me know if this makes sense to you.