Можете ли вы установить порядок появления файлов в командах git?

Я хочу спрятать один файл. поскольку git stash не позволяет имя файла в качестве параметра, я должен использовать git stash -p и выберите файл среди остальных изменений.

Это прекрасно работает, если изменения, не подготовленные для фиксации, не содержат много файлов, или если файл, который я хочу сохранить, является одним из первых.

Однако, если есть много файлов, и тот, который я хочу сохранить, находится в конце списка, мне придется пройти через все остальные, пока я не доберусь до нужного. И это немного утомительно.

Поэтому мне было интересно: есть ли способ определить порядок, в котором файлы, не подготовленные для фиксации, появляются при выполнении git stash -p?

1 ответ

Вы могли бы сделать это:

git add file
git stash -k -u
git stash
git stash pop stash@\{1\}
git checkout file

Это полный взлом, и он будет работать только в том случае, если вы не сделали никаких изменений до этого, но, насколько я знаю, нет хорошего способа сделать то, что вам нужно.

Сначала добавим file к индексу то спрячем все остальное (-k хранить file в индексе и -u также взять неотслеживаемые файлы) file, Последние две команды очищаются: мы применяем первый тайник для извлечения всего, затем checkoutfile удалить его изменения (как stash делает). В конце концов, вы должны иметь stash только с вашими изменениями на file в нем и ваш каталог без изменений, кроме file который вернулся к версии HEAD.

Другие вопросы по тегам