code: def _mergetree(src, dst):
      '''
      Akin to shutils.copytree but over existing directories, does a recursive merge copy.
  
      :param src: The source path
      :type  src: ``str``
  
      :param dst: The destination path
      :type  dst: ``str``
      '''
      for item in os.listdir(src):
          s = os.path.join(src, item)
          d = os.path.join(dst, item)
          if os.path.isdir(s):
              log.info("Copying folder %s to %s", s, d)
              if os.path.exists(d):
                  _mergetree(s, d)
              else:
                  shutil.copytree(s, d)
          else:
              log.info("Copying file %s to %s", s, d)
              shutil.copy2(s, df _mergetree(src, dst):
      '''
      Akin to shutils.copytree but over existing directories, does a recursive merge copy.
  
      :param src: The source path
      :type  src: ``str``
  
      :param dst: The destination path
      :type  dst: ``str``
      '''
      for item in os.listdir(src):
          s = os.path.join(src, item)
          d = os.path.join(dst, item)
          if os.path.isdir(s):
              log.info("Copying folder %s to %s", s, d)
              if os.path.exists(d):
                  _mergetree(s, d)
              else:
                  shutil.copytree(s, d)
          else:
              log.info("Copying file %s to %s", s, d)
              shutil.copy2(s, d)
docs: Akin to shutils.copytree but over existing directories, does a recursive merge copy.
  
      :param src: The source path
      :type  src: ``str``
  
      :param dst: The destination path
      :type  dst: ``str``