Как удалить рабочую копию из клона 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