def all_files(): """Return the names of all files in the repository""" ls_files = git.ls_files(z=True) if ls_files: return core.decode(ls_files[:-1]).split('\0') else: return []
def specified_diff_worktree(p): modified = [] submodules = set() status, output = git.diff_files(p, z=True, with_status=True) if status != 0: # handle git init ls_files = core.decode(git.ls_files(p, modified=True, z=True)) if ls_files: modified = ls_files[:-1].split('\0') return modified, submodules while output: rest, output = output.split('\0', 1) name, output = output.split('\0', 1) status = rest[-1] name = core.decode(name) if '160000' in rest[1:14]: submodules.add(name) elif status in 'DAMT': modified.append(name) return modified, submodules
def specified_untracked_files(p): """Returns a sorted list of untracked files.""" ls_files = git.ls_files(p, z=True, others=True, exclude_standard=True) if ls_files: return core.decode(ls_files[:-1]).split('\0') return []