When patching complete directories at once GenPatch may encounter files in new subdirectories. These files will be handled too, unless you explicitly ignore all files in this subdirectory. Please read how to ignore files by pattern, if you want to use this option. If you renamed a subdirectory in your software, the Auto-detection will ensure that the renaming works as expected.
When the patch file is applied, new directories are created when they contain news files as required. Please note: There is currently no way to create empty directories and such are ignored by GenPatch.
New files are such end state files that have no suitable start states in all of the start states. For them "Auto-detection of best matching source for a target file" will fail and not yield a creation path to take benefit of existing files on the end user side. In this case, the GenPatch embeds the file in complete in the patch file and just writes it out when you apply the patch file.
You can force this behavior by using the "-nopatch=pattern" option of GenPatch for any file you think that it should not be created using patching, but keep in mind that tolerating to fail might be a way to go for you in many situations also.