К сожалению, я случайно запустил команду "get checkout HEAD". в неправильном каталоге. Он выдал вывод «Обновлено 2 пути из 2096756f», но я понятия не имею, каковы были мои локальные изменения. Я предполагаю, что не могу узнать, но мне интересно, как я могу защитить себя в будущем, поскольку эта команда - это то, как я обычно отбрасываю локальные изменения. Могу ли я создать для этого какой-то псевдоним, который защитит меня от такой ошибки в будущем?





I accidentally ran 'get checkout HEAD .' in the wrong directory.
Это плохо.
It produced the output 'Updated 2 paths from 2096756f' but I have no idea what my local changes were.
И если у вас нет локальных резервных копий (снимков zfs, macOS Time Machine и т. д.), они просто исчезнут. Git не может помочь вам вернуть их: вы сказали Git удалить их из вашего рабочего дерева, и он это сделал.
I assume that I can't find out,
Если ваша ОС хранит время модификации файлов, найдите два последних измененных файла. Это будут те два, которые git checkout HEAD . перезаписали.
I am wondering how I can protect myself in the future as this command is how I habitually discard local changes.
Измените свои привычки. Вы не можете использовать встроенную команду Git. Вы могу создаете собственный git псевдоним или git команду, которая:
git checkout HEAD ., жалуется и не делает этого.Поскольку вы пишете эту команду или псевдоним самостоятельно, вы можете выбрать, что будет в разделе «но» шага 2. Это (предположительно) заставит вас изменить свои привычки.
(Я стараюсь использовать git status, а затем git restore -- path/to/file в эти дни, чтобы знать, что я восстанавливаю; я могу вырезать и вставить имя файла из git status здесь.)
Is there some alias I can create that for this that would protect me from such a mistake in the future
Нет. checkout опасен, и Git не защитит вас от вас самих.
Но отличная защита — отказаться от использования checkout. Вместо этого используйте switch и restore. Они значительно затрудняют совершение пагубной ошибки.
Я нашел предложение искать недавно измененные файлы особенно полезным, спасибо.