code: def read_job(self, job_id, checkout=False):
          
          self.job_id = job_id
  
          commit = self.get_head_commit()
          self.logger.debug('Job ref points to ' + commit)
          self.command_exec(['read-tree', self.ref_head])
  
          if checkout:
              self.logger.debug('Working directory in ' + self.work_tree)
  
              # make sure we have checked out all files we have added until now. Important for simple models,
              # so we have the actual model.py and dataset scripts.
              if os.path.exists(self.work_tree):
                  shutil.rmtree(self.work_tree)
  
              os.makedirs(self.work_tree)
  
              # make the working tree reflect exactly the tree of ref_head.
              # since we removed the dir before, we have exactly the tree of the reference
              # '--', '.' is important to not update HEAD
              self.command_exec(['--work-tree', self.work_tree, 'checkout', self.ref_head, '--', '.'])
docs: Reads head and reads the tree into index,
          and checkout the work-tree when checkout=True.
  
          This does not fetch the job from the actual server. It needs to be in the local git already.