Попередні вимоги: Git
Git дозволяє кільком користувачам працювати над одним проектом одночасно. Припустімо, що розробник працює над функцією у гілці, і йому потрібно отримати зміни з гілки іншого розробника, або йому потрібно терміново працювати над якоюсь іншою функцією, але функція, над якою він зараз працює, є незавершеною. У цьому випадку ви не можете зафіксувати частковий код поточної робочої функції. Щоб додати цю нову функцію, потрібно видалити поточні зміни та зберегти їх в іншому місці. Для таких ситуацій Git пропонує дуже корисну команду, відому як « git stash '. git stash команда зберігає попередньо написаний код, а потім повертається до останнього коміту для початку заново. Тепер ви можете додати нову функцію, не порушуючи стару, оскільки вона зберігається локально. Після встановлення нової функції ви можете продовжити роботу над старою функцією, яка була незавершеною та незакріпленою.
Git stash проти Git Commit
Існує два альтернативних способи збереження змін у репозиторії git: stash і commit.
Схованка Git: Для цього можна використовувати команду Git stash, якщо розробник працює над проектом і хоче зберегти зміни, не вносячи їх. Це дозволить йому змінювати гілки та працювати над іншими проектами, не впливаючи на існуючі модифікації. Ви можете скасувати зміни, коли це необхідно, і він зберігає поточний стан і повертає розробників до попереднього стану.
Git комміт: Розробники хочуть постійно зберігати свої зміни у вихідному коді в історії сховища. The git commit для цього можна використати команду. Git створює новий комміт, який документує ваші зміни та додає їх до історії сховища.
Підсумовуючи. Коміти Git назавжди зберігають зміни в історії сховища, а Git stash використовується для створення резервних копій файлів, над якими ми працюємо, але ще не готових до фіксації.
Git Stash проти Git Reset
Обидві команди можна комбінувати для керування змінами в сховищі Git і мати різні випадки використання.
Git reset і Git stash За допомогою цих двох команд ми можемо відновити всі раніше видалені та резервні копії файлів до поточного робочого каталогу. Ці дві основні відмінності такі:
Git Stash | Git Скидання |
---|---|
Git stash використовується для збереження файлів, у які внесено зміни та не готові до фіксації. | Git reset може повністю скасувати зміни та змінити вказівник гілки на новий комміт |
Розробники можуть змінювати гілки та працювати над іншими завданнями, не впливаючи на поточні зміни. | Git reset скасовує вже внесені зміни. |
Git Stash проти Git Stage
Постановка використовується для того, щоб підготувати зміни до наступного коміту, а Git stash використовується для створення резервної копії файлів, які були змінені, але ще не готові до коміту. Обидві команди можна комбінувати для керування змінами в сховищі Git і мати різні випадки використання.
Git Stash | Етап Git |
---|---|
Git stash використовується для резервного копіювання файлів | Файли додаються до індексу git за допомогою етапу git. |
Git stash використовується, якщо вам потрібно переключитися на інше завдання чи гілку під час роботи над функцією чи виправленням помилок. | Зміни етапів Git мають бути включені до наступного коміту, коли ви використовуєте команду git add. |
У якій папці зберігається історія Git Stash?
Коли ми використовуємо git stash, дані зберігатимуться у формі схованок у нашому локальному сховищі. За замовчуванням дані зберігатимуться у файлі git/refs/stash. У цьому файлі зберігаються всі посилання, а фактичні дані зберігаються в каталозі .git/objects, як і інші об’єкти Git.
скільки тижнів на місяць
Наведена нижче команда використовується для переліку всіх схованок, які були створені.
git stash list>
Як зберегти зміни в Git?
Щоб зберегти незафіксовані зміни для подальшого використання, ви можете скористатися 'git stash' команда. Ця команда зберігає ваші локальні зміни та повертає робочий каталог відповідно до коміту HEAD, щоб отримати чистий робочий каталог.
Ось кілька важливих параметрів, які найчастіше використовуються:
- Git stash Git stash save Git stash list Git stash apply Git stash changes Git stash pop Git stash drop Git stash clear Git stash branch
Сховище вашої роботи (Git Stash)
git stash>

За замовчуванням працює git stash збереже зміни, які було додано до вашого індексу (поетапні зміни), і зміни, внесені до файлів, які наразі відстежуються Git (непоетапні зміни). Щоб зберегти невідстежувані файли, використовуйте git stash -u .
Керування декількома тайниками (список схованок Git)
Ви можете створити кілька тайників і переглядати їх за допомогою 'git stash list' команда. Кожен запис у тайнику вказано зі своїм іменем (наприклад, тайник@{1} ), назва гілки, яка була актуальною на момент створення запису, і короткий опис коміту, на основі якого був запис.
git stash list>

Щоб надати більше контексту схованці, ми створюємо схованку за допомогою такої команди:
git stash save 'message'>
Що таке Git Stash Apply і POP(Git Stash Apply & POP)
Ви можете повторно застосувати раніше приховані зміни за допомогою 'git stash pop' або 'git stash apply' команди. Єдина різниця між обома командами полягає в тому, що 'git stash pop' видаляє зміни зі сховища та повторно застосовує зміни в робочій копії 'git stash apply' лише повторно застосовує зміни в робочій копії, не видаляючи зміни зі сховища. Простими словами, поп видаляє стан зі списку схованок, поки застосувати не видаляє стан зі списку схованок. За допомогою наступної команди ми можемо повторно застосувати збережені зміни. Найновішу схованку буде застосовано до нашого робочого каталогу, а також її буде взято зі списку схованок.
git stash pop>

git stash apply>

За замовчуванням 'git stash pop' або 'git stash apply' повторно застосує останній створений сховок: stash@{0} Щоб вибрати, який сховок застосувати, ви можете передати ідентифікатор як останній аргумент ( Наприклад, :- git stash pop stash@{2}).
Git Stash Show
git stash show Команда використовується для відображення підсумку операцій, виконаних над тайником.
git stash show>

Створення гілки зі сховища (гілка Git Stash)
Якщо ви хочете створити та перевірити нову гілку, починаючи з коміту, у якому спочатку було створено сховище, і застосувати зміни, збережені в схованці, використовуйте 'git stash гілка branch_name stash_name' . Він скидає тайник, який надається як аргумент, і якщо тайник не вказано, скидає останній.
git stash branch newbranch stash@{0}>

Очищення схованки (Git Stash Clear)
Щоб видалити певний тайник ( наприклад: – stash@{1}), використовуйте ‘git stash drop stash@{1}’ . За замовчуванням ця команда буде видалена тайник@{0} якщо аргумент не надано ( git stash drop ). Щоб видалити всі тайники одночасно, скористайтеся 'git stash clear' команда.

Команда git stash дозволяє нам зберігати незафіксовані зміни, щоб ми могли використовувати їх за потреби в майбутньому. Коли ми використовуємо команду git stash, файли автоматично створюються резервні копії. Це дозволяє нам перемикати гілки, виконувати роботу по дому, а потім легко повертати файли, коли ми знову будемо готові над ними працювати.

Збереження невідстежених або проігнорованих файлів
Ми можемо використовувати команду git stash, щоб зберегти файли, які не відстежуються або ігноруються. Дотримуючись наведених нижче кроків, ми можемо зберегти наші файли:
Крок 1: Збережіть зміни для цього за допомогою наведеної нижче команди.
git stash save --include-untracked>
–include-untracked за допомогою цього він також сховає всі невідстежувані файли.
Крок 2: Перевірте тайник:
Скористайтеся наведеною нижче командою, щоб підтвердити, що тайник створено:
git stash list>
крок 3: Використовуючи наступну команду, ми можемо повернути та застосувати тайник.
git stash apply stash@{0}>
крок 4: Після завершення повернення тайника, якщо він непотрібний, ми можемо видалити тайник за допомогою такої команди.
git stash drop stash@{0}>
Рекомендації Git Stash
Ось кілька найкращих практик щодо використання Схованка Git команда.
- Не зловживайте git stash: Git stash слід використовувати помірковано, коли дуже важливо попрацювати над іншим завданням, тоді ми повинні використовувати лише git stash, це вплине на зміни, які потрібно внести під час коміту.
- Уникайте непотрібних повідомлень: Використовуючи git stash, ви можете додати повідомлення для опису змін, які ви зберігаєте. Зробіть повідомлення змістовним. Це стане в пригоді, якщо пізніше вам потрібно згадати, що в схованці. Використовуйте заяви, які є інформативними та спонукальними та точно відображають зміни, які приховуються.
- Працевлаштувати філії: Сховище — це корисний інструмент під час роботи з гілками Git. Перш ніж зберігати зміни, створіть нову гілку, щоб ви могли переключатися на інші завдання чи гілки, не впливаючи на поточні зміни. Поверніться до гілки та застосуйте тайник, коли будете готові знову працювати над змінами.
- Зміни слід вносити якнайшвидше: зберігання слід використовувати лише як тимчасове рішення. Після завершення внесення набору змін ви повинні закріпити їх у сховищі, щоб зберегти запис про зміни.