Полагаю, вы могли бы представить себе среду, в которой программист хочет стереть коммиты, чтобы скрыть свою ответственность за ошибку. Или, может быть, более распространенной проблемой было бы то, что начинающий программист стирает то, что ему не следовало бы, по незнанию, и теперь вся история потеряна, или даже компетентный опытный программист совершает ошибку. Эти сценарии - веские причины усложнить уничтожение или требовать особых привилегий.
Но у меня было несколько раз, когда мы решали реструктурировать наши репозитории по той или иной причине. Если, скажем, у нас есть один репозиторий на сервере A, а другой на сервере B, и мы решили переместить проект из A в B, я бы очень хотел стереть его из A. В противном случае, через шесть месяцев кто-то может найти копию на А и не понимаю, что это больше не ток.
Особенно, когда я впервые изучал SVN, я принял много плохих решений о том, как организовать ветки и теги, которые позже захотел переработать. Я действительно хотел просто стереть старую структуру и вернуть все обратно. Опять же, чтобы не запутать никого, кто смотрит на историю.