Как удалить рабочую копию из клона Mercurial?

При клонировании репозитория с помощью Mercurial вы можете передать флаг -U/- noupdate, чтобы создать клон без рабочей копии. Можно ли удалить рабочую копию, если я забуду передать этот флаг во время клонирования? И если да, то как?

Концептуально это похоже на этот мерзавец, но для ртути.

2 ответа

Решение

Я мог бы упустить нюансы здесь. Кто-то может исправить меня.

Документация на вики Mercurial говорит следующее о голых репозиториях:

"Хотя это небольшая проблема, Mercurial, очевидно, может обрабатывать пустой репозиторий, то есть репозиторий без рабочей копии. В Git для этого нужен параметр конфигурации, тогда как в Hg вам нужно только проверить нулевую ревизию, например это:"

hg update null

Нулевая ревизия - пустое состояние, которое у вас есть, когда вы только что сделали hg init, Он является родителем ревизии 0 (и вторым родителем всех ревизий без слияния), и, обновив его, вы снова получите пустую рабочую копию.

Ссылка может выглядеть иронично:

rm -rf *

Это удаляет все "видимые" файлы (под *nix). Так как хранилище Mercurial хранится в "скрытом" файле .hg, это не будет затронуто. К сожалению, ваши собственные скрытые файлы, такие как .hgignore,

Чтобы восстановить рабочую копию, я уверен, что есть hg update флаг, который работает, но это будет также:

hg revert --all
Другие вопросы по тегам