checkout, restore: support the --pathspec-from-file option
commita9aecc7abb52c4dcd616ee8f43ce5741a15e14a6
authorAlexandr Miloslavskiy <alexandr.miloslavskiy@syntevo.com>
Tue, 3 Dec 2019 14:02:18 +0000 (3 14:02 +0000)
committerJunio C Hamano <gitster@pobox.com>
Wed, 4 Dec 2019 18:10:37 +0000 (4 10:10 -0800)
tree44d813a9785437d2b3d6b22c3e81723658b97f93
parentcfd9376c1dbe32a42bc877524940cceebd898106
checkout, restore: support the --pathspec-from-file option

Decisions taken for simplicity:
1) For now, `--pathspec-from-file` is declared incompatible with
   `--patch`, even when <file> is not `stdin`. Such use case it not
   really expected.
2) It is not allowed to pass pathspec in both args and file.

`you must specify path(s) to restore` block was moved down to be able to
test for `pathspec.nr` instead, because testing for `argc` is no longer
correct.

`git switch` does not support the new options because it doesn't expect
`<pathspec>` arguments.

Signed-off-by: Alexandr Miloslavskiy <alexandr.miloslavskiy@syntevo.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Documentation/git-checkout.txt
Documentation/git-restore.txt
builtin/checkout.c
t/t2026-checkout-pathspec-file.sh [new file with mode: 0755]
t/t2072-restore-pathspec-file.sh [new file with mode: 0755]
t/t9902-completion.sh