From a6499eb5ddfed61ca1055d5fc06ce1846047c84f Mon Sep 17 00:00:00 2001 From: solik220-bit Date: Tue, 12 May 2026 16:07:08 +0300 Subject: [PATCH 1/2] [TASK] STASH#3 clouses (https://github.com/SENATOROVAI/intro-cs/issues/3) --- scripts/git/stash.ipynb | 103 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 103 insertions(+) create mode 100644 scripts/git/stash.ipynb diff --git a/scripts/git/stash.ipynb b/scripts/git/stash.ipynb new file mode 100644 index 00000000..44a47ead --- /dev/null +++ b/scripts/git/stash.ipynb @@ -0,0 +1,103 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": null, + "id": "b95185e6", + "metadata": {}, + "outputs": [], + "source": [ + "\"\"\"STASH#3.\"\"\"" + ] + }, + { + "cell_type": "markdown", + "id": "185f7a25", + "metadata": {}, + "source": [ + "1. Что делает команда git stash?\n", + "Ответ: команда git stash временно сохраняет все незакоммиченные изменения и очищает рабочую директорию проекта.\n", + "\n", + "2. Как просмотреть список всех сохранённых изменений (стэшей)?\n", + "Ответ: выполнить команду: git stash list\n", + "\n", + "3. Какая команда применяется для использования верхнего стэша?\n", + "Ответ: git stash apply\n", + "\n", + "4. Как применить конкретный стэш по его номеру?\n", + "Ответ выполнить команду: git stash apply stash@{0}\n", + "\n", + "5. Чем отличается git stash apply от git stash pop?\n", + "Ответ:\n", + " - git stash apply — применяет стэш, но оставляет его в истории.\n", + " - git stash pop — применяет стэш и удаляет его из списка стэшей.\n", + "\n", + "6. Что делает команда git stash drop?\n", + "Ответ: удаляет конкретный стэш из истории.\n", + "Пример: git stash drop stash@{0}\n", + "\n", + "7. Как полностью очистить все сохранённые стэши?\n", + "Ответ: выполнить команду: git stash clear\n", + "\n", + "8. В каких случаях удобно использовать git stash?\n", + "Ответ:\n", + " - при переключении между ветками;\n", + " - если нужно временно сохранить незавершённую работу;\n", + " - перед pull/rebase;\n", + " - когда нужно быстро очистить рабочую директорию.\n", + "\n", + "9. Что произойдёт, если выполнить git stash pop, но есть конфликтующие изменения?\n", + "Ответ: Git попытается применить изменения. Если возникнут конфликты, появится сообщение о конфликте, и их нужно будет решить вручную.\n", + "\n", + "10. Можно ли восстановить удалённый стэш после git stash drop?\n", + "Ответ: как правило нет. После удаления стэш считается потерянным, хотя иногда его можно восстановить через reflog.\n", + "\n", + "11. Что делает команда git stash save \"NAME_STASH\"?\n", + "Ответ: Сохраняет текущие изменения в стэш с указанным названием.\n", + "Пример: git stash save \"SENATOROV ver1\"\n", + "\n", + "12. Что делает команда git stash apply \"NUMBER_STASH\"?\n", + "Ответ: Применяет выбранный стэш по его номеру без удаления из истории.\n", + "Пример: git stash apply stash@{1}\n", + "\n", + "13. Что делает команда git stash pop \"NUMBER_STASH\"?\n", + "Ответ: применяет выбранный стэш и удаляет его из списка стэшей.\n", + "Пример: git stash pop stash@{1}\n", + "\n", + "14. Сохранение изменений в стэш \"SENATOROV ver1\"\n", + "Команда: git stash push -u -m \"SENATOROV ver1\"\n", + "\n", + "15. Создание второго стэша \"SENATOROV ver2\"\n", + "Команда: git stash push -u -m \"SENATOROV ver2\"\n", + "\n", + "16. Восстановление стэша \"SENATOROV ver1\"\n", + "Команда: git stash apply stash@{1}\n", + "\n", + "17. Удаление всех стэшей\n", + "Команда: git stash clear\n", + "\n" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "myenv", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.12.11" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} From 171be7f82dea6f95e6c57073a5d2da96bcf9ad93 Mon Sep 17 00:00:00 2001 From: solik220-bit Date: Tue, 12 May 2026 16:17:04 +0300 Subject: [PATCH 2/2] [TASK] STASH#3 clouses (https://github.com/SENATOROVAI/intro-cs/issues/3) --- scripts/git/stash.py | 64 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 scripts/git/stash.py diff --git a/scripts/git/stash.py b/scripts/git/stash.py new file mode 100644 index 00000000..dfc090b9 --- /dev/null +++ b/scripts/git/stash.py @@ -0,0 +1,64 @@ +"""STASH#3.""" + +# 1. Что делает команда git stash? +# Ответ: команда git stash временно сохраняет все незакоммиченные изменения и очищает рабочую директорию проекта. +# +# 2. Как просмотреть список всех сохранённых изменений (стэшей)? +# Ответ: выполнить команду: git stash list +# +# 3. Какая команда применяется для использования верхнего стэша? +# Ответ: git stash apply +# +# 4. Как применить конкретный стэш по его номеру? +# Ответ выполнить команду: git stash apply stash@{0} +# +# 5. Чем отличается git stash apply от git stash pop? +# Ответ: +# - git stash apply — применяет стэш, но оставляет его в истории. +# - git stash pop — применяет стэш и удаляет его из списка стэшей. +# +# 6. Что делает команда git stash drop? +# Ответ: удаляет конкретный стэш из истории. +# Пример: git stash drop stash@{0} +# +# 7. Как полностью очистить все сохранённые стэши? +# Ответ: выполнить команду: git stash clear +# +# 8. В каких случаях удобно использовать git stash? +# Ответ: +# - при переключении между ветками; +# - если нужно временно сохранить незавершённую работу; +# - перед pull/rebase; +# - когда нужно быстро очистить рабочую директорию. +# +# 9. Что произойдёт, если выполнить git stash pop, но есть конфликтующие изменения? +# Ответ: Git попытается применить изменения. Если возникнут конфликты, появится сообщение о конфликте, и их нужно будет решить вручную. +# +# 10. Можно ли восстановить удалённый стэш после git stash drop? +# Ответ: как правило нет. После удаления стэш считается потерянным, хотя иногда его можно восстановить через reflog. +# +# 11. Что делает команда git stash save "NAME_STASH"? +# Ответ: Сохраняет текущие изменения в стэш с указанным названием. +# Пример: git stash save "SENATOROV ver1" +# +# 12. Что делает команда git stash apply "NUMBER_STASH"? +# Ответ: Применяет выбранный стэш по его номеру без удаления из истории. +# Пример: git stash apply stash@{1} +# +# 13. Что делает команда git stash pop "NUMBER_STASH"? +# Ответ: применяет выбранный стэш и удаляет его из списка стэшей. +# Пример: git stash pop stash@{1} +# +# 14. Сохранение изменений в стэш "SENATOROV ver1" +# Команда: git stash push -u -m "SENATOROV ver1" +# +# 15. Создание второго стэша "SENATOROV ver2" +# Команда: git stash push -u -m "SENATOROV ver2" +# +# 16. Восстановление стэша "SENATOROV ver1" +# Команда: git stash apply stash@{1} +# +# 17. Удаление всех стэшей +# Команда: git stash clear +# +#