docs: def fetch(self):
          """
          Fetch the recent refs from the remotes.
  
          Unless git-up.fetch.all is set to true, all remotes with
          locally existent branches will be fetched.
          """
          fetch_kwargs = {'multiple': True}
          fetch_args = []
  
          if self.is_prune():
              fetch_kwargs['prune'] = True
  
          if self.settings['fetch.all']:
              fetch_kwargs['all'] = True
          else:
              if '.' in self.remotes:
                  self.remotes.remove('.')
  
                  if not self.remotes:
                      # Only local target branches,
                      # `git fetch --multiple` will fail
                      return
  
              fetch_args.append(self.remotes)
  
          try:
              self.git.fetch(*fetch_args, **fetch_kwargs)
          except GitError as error:
              error.message = "`git fetch` failed"
              raise error