Как просмотреть изменения в хранилище (stash) Git

GitGitBeginner
Практиковаться сейчас

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

Git stash - это мощная функция, которая позволяет временно сохранить локальные изменения без их фиксации (коммита). В этом руководстве вы узнаете, как просматривать изменения в хранилище (stash) Git, а также как эффективно управлять и работать с сохраненными в нем изменениями.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL git(("Git")) -.-> git/DataManagementGroup(["Data Management"]) git(("Git")) -.-> git/BasicOperationsGroup(["Basic Operations"]) git/BasicOperationsGroup -.-> git/status("Check Status") git/BasicOperationsGroup -.-> git/diff("Compare Changes") git/DataManagementGroup -.-> git/stash("Save Changes Temporarily") git/DataManagementGroup -.-> git/restore("Revert Files") subgraph Lab Skills git/status -.-> lab-415015{{"Как просмотреть изменения в хранилище (stash) Git"}} git/diff -.-> lab-415015{{"Как просмотреть изменения в хранилище (stash) Git"}} git/stash -.-> lab-415015{{"Как просмотреть изменения в хранилище (stash) Git"}} git/restore -.-> lab-415015{{"Как просмотреть изменения в хранилище (stash) Git"}} end

Понимание Git Stash

Git Stash - это мощная функция в Git, которая позволяет временно сохранить локальные изменения без их фиксации (коммита). Это особенно полезно, когда вам нужно переключиться на другую ветку (branch) или задачу, но вы не хотите потерять уже проделанную работу.

Когда вы сохраняете изменения в хранилище (stash), Git создает новую запись в хранилище, которая содержит текущее состояние рабочего каталога и индекса. Затем вы можете переключиться на другую ветку, работать над чем-то другим, а позже восстановить сохраненные изменения.

Основные сценарии использования Git Stash включают:

  1. Переключение между ветками: Когда вам нужно переключиться на другую ветку, но у вас есть несохраненные изменения, вы можете сохранить эти изменения в хранилище, переключиться на другую ветку, а затем применить сохраненные изменения позже.

  2. Применение частичных изменений: Если у вас есть смесь изменений, которые вы хотите зафиксировать (закоммитить) отдельно, вы можете сохранить в хранилище те изменения, которые вы не хотите коммитить сразу, закоммитить те изменения, которые вы хотите сохранить, а затем применить сохраненные изменения позже.

  3. Очистка рабочего пространства: Если в вашем рабочем каталоге есть много неотслеживаемых или измененных файлов, вы можете сохранить их в хранилище, чтобы очистить рабочее пространство перед получением (pull) или слиянием (merge) изменений из удаленного репозитория.

Для использования Git Stash вы можете выполнить следующие команды:

## Stash your current changes
git stash

## List all stashed changes
git stash list

## Apply the most recent stash
git stash apply

## Apply a specific stash
git stash apply stash@{index}

## Drop the most recent stash
git stash drop

## Apply and then drop the most recent stash
git stash pop

Понимая основы Git Stash, вы можете эффективно управлять своими локальными изменениями и переключаться между задачами или ветками без потери проделанной работы.

Просмотр изменений в хранилище (stash)

После того, как вы сохранили свои изменения в хранилище, вы, возможно, захотите проверить, какие изменения были на самом деле сохранены. Git предоставляет несколько способов просмотра изменений в хранилище.

Перечисление сохраненных изменений

Чтобы увидеть список всех сохраненных в хранилище изменений, вы можете использовать команду git stash list:

git stash list

Эта команда отобразит все сохраненные изменения, включая сообщение коммита, ветку (branch), с которой были сохранены изменения, и индекс хранилища.

Просмотр различий (diff) в хранилище

Чтобы просмотреть фактические изменения, которые были сохранены в хранилище, вы можете использовать команду git stash show. Эта команда отобразит различия между сохраненными изменениями и текущим состоянием репозитория.

## View the diff of the most recent stash
git stash show

## View the diff of a specific stash
git stash show stash@{index}

Вы также можете добавить опцию -p или --patch, чтобы увидеть полный патч, а не только сводку:

git stash show -p
git stash show stash@{index} -p

Просмотр файлов в хранилище

Если вы хотите увидеть список файлов, которые были сохранены в хранилище, вы можете использовать команду git stash show --name-only:

## Show the files in the most recent stash
git stash show --name-only

## Show the files in a specific stash
git stash show stash@{index} --name-only

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

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

Управление сохраненными в хранилище (stash) изменениями

После того, как вы сохранили свои изменения в хранилище, вам, возможно, придется управлять этими сохраненными изменениями различными способами. Git предоставляет несколько команд, которые помогут вам в этом.

Применение сохраненных изменений

Чтобы применить изменения из последнего сохраненного состояния (stash), вы можете использовать команду git stash apply:

git stash apply

Эта команда применит изменения из последнего сохраненного состояния в текущий рабочий каталог и индекс.

Если вы хотите применить определенное сохраненное состояние, вы можете использовать синтаксис stash@{index}, чтобы указать, какое сохраненное состояние вы хотите применить:

git stash apply stash@{2}

Удаление сохраненных изменений

Если вы больше не нуждаетесь в сохраненном изменении, вы можете удалить его из списка сохраненных состояний с помощью команды git stash drop:

## Drop the most recent stash
git stash drop

## Drop a specific stash
git stash drop stash@{2}

Применение и удаление за один шаг

Если вы хотите применить сохраненное состояние и сразу же удалить его, вы можете использовать команду git stash pop:

## Apply and drop the most recent stash
git stash pop

## Apply and drop a specific stash
git stash pop stash@{2}

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

Очистка всего хранилища

Если вы хотите удалить все сохраненные изменения, вы можете использовать команду git stash clear:

git stash clear

Эта команда удалит все сохраненные изменения из списка сохраненных состояний.

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

Резюме

По окончании этого руководства вы будете хорошо понимать, как просматривать изменения в хранилище (stash) Git, а также как управлять и работать с сохраненными в нем изменениями. Эти знания помогут вам поддерживать порядок в своем Git-репозитории и оптимизировать рабочий процесс разработки.