I would have expected that `git restore $commit $file` would copy the
content of said file from another revision only if your don’t have
uncommitted changes or to get an error.
The positional arguments to "git restore" are files. So that command will
error unless a file called $commit exists.
(You shell's tab completion should guide you here.)
You can use the --source option to specify the commit.
If it was really what I wanted to do, I would have expected to either do
`git restore $file && git restore $commit $file`, directly `git restore
--force $commit $file` or something similar.
Is your question that you expect a command like
git restore --source=some-commit some-file
to error if you have uncommitted changes (to "some-file")?
And instead you would run
git restore some-file
git restore --source=some-commit some-file