class_docstr: File-based Code Driver handles source control management for the project with files
      
class_docstr_tok: ["File-based","Code","Driver","handles","source","control","management","for","the","project","with","files"]
docstr: Checks if there exists any unstaged changes for code. Returns False if it's already staged
  
  Raises
  ------
  CodeNotInitialized
      error if not initialized (must initialize first)
  
  UnstagedChanges
      error if not there exists unstaged changes in environment
docstr_tok: ["Checks","if","there","exists","any","unstaged","changes","for","code",".","Returns","False","if","it","'s","already","staged","Raises","--","--","--","CodeNotInitialized","error","if","not","initialized","(","must","initialize","first",")","UnstagedChanges","error","if","not","there","exists","unstaged","changes","in","environment"]
code: def check_unstaged_changes(self):
      """Checks if there exists any unstaged changes for code. Returns False if it's already staged
  
      Raises
      ------
      CodeNotInitialized
          error if not initialized (must initialize first)
  
      UnstagedChanges
          error if not there exists unstaged changes in environment
  
      """
      if not self.is_initialized:
          raise CodeNotInitialized()
  
      # Check if unstaged changes exist
      if self._has_unstaged_changes():
          raise UnstagedChanges()
  
      return False
  
imports: import os
  import shutil
  import errno
  import pathspec
  import tempfile
  import hashlib
  import checksumdir
  from datmo.core.util.misc_functions import list_all_filepaths
  from datmo.core.util.i18n import get
  from datmo.core.util.exceptions import PathDoesNotExist, FileIOError, UnstagedChanges, CodeNotInitialized, CommitDoesNotExist
  from datmo.core.controller.code.driver import CodeDriver
label_desc: Use image node_id 16 for calling the FileCodeDriver obj's underlying member method code with example usage: obj.check_unstaged_changes() and returns: False