Как я могу удалить все мои Git заставки сразу?
В частности, я имею в виду, набрав одну команду.
Как я могу удалить все мои Git заставки сразу?
В частности, я имею в виду, набрав одну команду.
Следующая команда удаляет все ваши stashи:
git stash clear
Из документации git:
clear
Удалить все спрятанные состояния.
ВАЖНОЕ ПРЕДУПРЕЖДЕНИЕ: Эти состояния будут подвергаться обрезке, и их может быть невозможно восстановить (...).
Есть два способа удалить stash:
$ git stash drop <stash_id>
.$ git stash clear
.Используйте оба из них с осторожностью, может быть трудно восстановить когда-то удаленные stashи.
Вот справочная статья.
эта команда позволяет вам просмотреть все спрятанные изменения.
git stash list
Вот следующая команда, чтобы очистить все ваши изменения.
git stash clear
Теперь, если вы хотите удалить одно из сохраненных изменений из области хранения
git stash drop [email protected]{index} // here index will be shown after getting stash list.
Примечание:
git stash list
позволяет вам получить индекс из области хранения git.
В дополнение к тому, на что был отмечен принятый ответ - git stash clear
, чтобы подтвердить, все ли очищены, используйте - git stash list
У меня было другое требование, например, нужно удалить только несколько тайников, в этом случае будет полезен приведенный ниже код.
#!/bin/sh
for i in 'seq 5 8'
do
git stash drop [email protected]{$i}
done
/* удалит от 5 до 8 индексов */
Используйте эту команду для очистки stash git stash clear
для получения дополнительной информации о stash git stash --help
или проверьте эту ссылку
Я хотел сохранить несколько последних stashов, но удалить все остальное.
Поскольку все stashи перенумеровываются, когда вы их бросаете, это легко сделать с помощью while. Чтобы удалить все stashи старше, чем stash @{19}:
while git stash drop '[email protected]{20}'; do true; done