Merge pull request #2580 from m-rsha/diff-filter

Change `intent_to_add_files` from using `git status` to `git diff`
This commit is contained in:
Anthony Sottile 2022-11-02 20:30:01 -04:00 committed by GitHub
commit 3ca9ea7b98
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -150,18 +150,10 @@ def get_staged_files(cwd: str | None = None) -> list[str]:
def intent_to_add_files() -> list[str]:
_, stdout, _ = cmd_output(
'git', 'status', '--ignore-submodules', '--porcelain', '-z',
'git', 'diff', '--ignore-submodules', '--diff-filter=A',
'--name-only', '-z',
)
parts = list(reversed(zsplit(stdout)))
intent_to_add = []
while parts:
line = parts.pop()
status, filename = line[:3], line[3:]
if status[0] in {'C', 'R'}: # renames / moves have an additional arg
parts.pop()
if status[1] == 'A':
intent_to_add.append(filename)
return intent_to_add
return zsplit(stdout)
def get_all_files() -> list[str]: