Сегодня утром мне удалось прострелить себе ногу, выполнив следующие действия:
- Началась работа над изменением моего проекта
- Кучу правок в кучу файлов
- Понял, что мой подход был неправильным, и что мне нужно начинать сначала
- cd'd на верхний уровень моего проекта и выполнил "svn --recursive revert". чтобы восстановить мою локальную песочницу до состояния до изменений.
- Завыл от ужаса, когда понял, что в моей локальной песочнице произошел ряд других изменений, и я только что стер их все. (сервер svn не работал в прошлую пятницу, поэтому я не смог их зарегистрировать и забыл о них на выходных)
К счастью, в этом случае я сделал "svn diff> temp.txt" перед уходом с работы в пятницу, и файл temp.txt все еще был на моем жестком диске, поэтому я смог загрузить этот файл в "патч" и восстановить свой потерял изменения.
Но для моей справки в будущем (т.е. в следующий раз, когда я сделаю ту же глупую ошибку) ... есть ли способ сказать svn отменить "svn revert"? Сохраняет ли svn где-нибудь резервную копию локальных / незарегистрированных различий?