On Mon, Dec 6, 2021 at 12:04 PM Will Beason [off-list ref] wrote:
I typed "git checkout -"
error: pathspec '-' did not match any file(s) known to git
I expected the previously-working behavior of switching to previous branch to
work, but it didn't.
If I recall correctly, for `-` to work it consults the reflog, but if
the reflog has been cleared or expired, it won't be able to determine
the previous branch. For instance, try this:
% git init foo
% cd foo
% echo data >data
% git add data
% git commit -m data
% git checkout -b other
% git checkout -
% git reflog expire --expire=now --all
% git checkout -
error: pathspec '-' did not match any file(s) known to git
So, this is probably expected behavior, though the error message isn't
very helpful and perhaps could be improved.