Используя git, как сбросить рабочее дерево в состояние индекса?
ситуация:
- редактировать файлы
- добавить файлы в индекс
- Изменить дополнительные файлы
теперь у нас есть три разных государств. Состояние головки, состояние индекса и состояние рабочего дерева. Какая команда отменяет изменения в рабочем дереве, чтобы оно соответствовало состоянию индекса?
4 ответа:
Я предпочитаю использовать
git checkout .который отбрасывает все изменения из рабочего каталога вниз. Это имеет значение, если вы не находитесь в корне репозитория.эта команда не удаляет вновь созданные файлы, которые обычно хорошо. Если вам нужно сделать это, то вы можете использовать
git cleanКак хорошо.
можно использовать
git stash save --keep-indexдля этого. После сохранения тайника, вы можете использоватьgit stash dropЕсли вы не хотите, чтобы держать его вокруг.
можно использовать git-checkout-index. Имейте в виду, что вам нужно добавить
-fчтобы заставить его перезаписать существующие файлы, или-f -aдля принудительной перезаписи всех путей в индексе.
git checkout :/удаляет все изменения в рабочем дереве и заменяет его тем, что находится в индексе, независимо от текущего рабочего каталога.https://git-scm.com/docs/gitglossary#gitglossary-aiddefpathspecapathspec