original_docstring: 
          Find the specified file in the specified environment
          
docstring: Find the specified file in the specified environment
docstring_tokens: Find the specified file in the specified environment
code: def find_file(self, path, tgt_env):
          '''
          Find the specified file in the specified environment
          '''
          tree = self.get_tree(tgt_env)
          if not tree:
              # Branch/tag/SHA not found in repo
              return None, None, None
          blob = None
          mode = None
          depth = 0
          while True:
              depth += 1
              if depth > SYMLINK_RECURSE_DEPTH:
                  blob = None
                  break
              try:
                  entry = tree[path]
                  mode = entry.filemode
                  if stat.S_ISLNK(mode):
                      # Path is a symlink. The blob data corresponding to this
                      # path's object ID will be the target of the symlink. Follow
                      # the symlink and set path to the location indicated
                      # in the blob data.
                      link_tgt = self.repo[entry.oid].data
                      path = salt.utils.path_join(os.path.dirname(path), link_tgt)
                  else:
                      blob = self.repo[entry.oid]
                      if isinstance(blob, pygit2.Tree):
                          # Path is a directory, not a file.
                          blob = None
                      break
              except KeyError:
                  blob = None
                  break
          if isinstance(blob, pygit2.Blob):
              return blob, blob.hex, mode
          return None, None, None
code_tokens: def find_file ( self , path , tgt_env ) : tree = self . get_tree ( tgt_env ) if not tree : return None , None , None blob = None mode = None depth = 0 while True : depth += 1 if depth > SYMLINK_RECURSE_DEPTH : blob = None break try : entry = tree [ path ] mode = entry . filemode if stat . S_ISLNK ( mode ) : link_tgt = self . repo [ entry . oid ] . data path = salt . utils . path_join ( os . path . dirname ( path ) , link_tgt ) else : blob = self . repo [ entry . oid ] if isinstance ( blob , pygit2 . Tree ) : blob = None break except KeyError : blob = None break if isinstance ( blob , pygit2 . Blob ) : return blob , blob . hex , mode return None , None , None
short_docstring: Find the specified file in the specified environment
short_docstring_tokens: Find the specified file in the specified environment
comment: '''
          Find the specified file in the specified environment
          '''$SEP$# Branch/tag/SHA not found in repo$SEP$# Path is a symlink. The blob data corresponding to this$SEP$# path's object ID will be the target of the symlink. Follow$SEP$# the symlink and set path to the location indicated$SEP$# in the blob data.$SEP$# Path is a directory, not a file.