SourceSafe: Может ли он восстанавливать удаленные файлы?

Вопрос: Сегодня я работал с MS Visual Sourcesafe, то есть с системой уничтожения исходного кода Microsoft, которая никогда ничего не спасала, но уже многое уничтожила.

Сегодня у меня был еще один неприятный деструктивный эпизод:

Я работал над отчетом службы отчетов (файлы * .rdl xml). Я изменял отчет, поэтому создал копию и изменил ее.

Оригинал называется FILENAME.rdl Моя измененная копия называется FILENAME2.rdl

Закончил, сэкономил. Отметился. Все было правильно. Перешел в офлайн, продолжил работать.

Позже я удалил filename.rdl и переименовал filename2.rdl в filename.rdl

Остаток дня я продолжал работать в автономном режиме. Вечером я зарегистрировался, и снова появился filename2.rdl. Я думал, что он скопировал старую версию обратно, поэтому я удалил filename.rdl (с локального компьютера и с исходным кодом, с помощью кнопки удаления клавиатуры в древовидной структуре визуальной студии) и хотел снова переименовать filename2.rdl в filename.rdl.

Когда я попробовал, я понял, что filename2.rdl - это просто запись, которая появилась в treevieww, но не на диске ... Именно в этот момент я понял, что теперь у меня проблема ...

Заглянул в корзину, но там ничего. Я попробовал 5 различных программ восстановления и проводник теневого копирования [чтобы выяснить, что данные диска, отличные от C, такие как раздел данных e, не копируются автоматически службой теневого копирования ...], но безуспешно. Файл пропал.

Можно ли по-прежнему извлекать файл из источника или он удаляется навсегда, когда вы нажимаете кнопку удаления в древовидном представлении VisualStudio и нажимаете ОК при удалении его из файла и источника?

Пока что я нашел вот это: http://support.microsoft.com/?scid=kb;en-us;244019&x=11&y=7

но из этого неясно, исчез ли файл. Проблема в том, что если его там нет, я должен переделать примерно часовую работу сегодня вечером, потому что завтра будет напряженный день.


person Stefan Steiger    schedule 17.08.2010    source источник
comment
Я нахожу идею VCS, которая не заставляет задуматься о том, что вы проверяете, в недоумении. Мои соболезнования, если вам нужно его использовать.   -  person David Thornley    schedule 17.08.2010


Ответы (3)


В SourceSafe есть 2 уровня удаления. Если при удалении файла вы отметите опцию «Удалить навсегда», файл не будет восстановлен. В противном случае вы можете перейти к свойствам его родительского проекта и восстановить его позже.

person Rachel    schedule 22.11.2010

Если он не хранится в другой версии или ветке вашего кода, я думаю, вам не повезло.

Однако в любом случае: по вашим оценкам, это один час работы. Вы уже (предположительно) потратили некоторое время (возможно, час или два), пытаясь вернуть файл. Разве вы не сейчас в той точке, где, даже если у VSS есть способ вернуть ваш файл для вас, вам будет лучше, если вы просто восстановите его?

person AllenG    schedule 17.08.2010
comment
Наверное. И мне следовало удалить sourceafe и установить службу каждые 30 минут полного резервного копирования, которую я хотел установить, но не получил разрешения делать обе эти вещи ... - person Stefan Steiger; 17.08.2010
comment
Человек, система управления исходным кодом - когда она уже не может объединить два файла, измененных одновременно, она должна как минимум сохранять резервные копии и протокол транзакции. Но sourceafe даже этого не делает ... На мой взгляд, чертовски более чем лишняя программа. Так же эффективно, как синхронизация сетевого диска. Ну даже не это. - person Stefan Steiger; 17.08.2010

Короткий ответ - однозначно НЕТ!
Не может! Я пробовал.
Но он перезаписал воссозданный отчет совершенно неправильной восстановленной версией ...

К счастью, я предвидел это и сделал резервную копию воссозданного отчета для этого случая .
Так что я не зря потратил тот час на воссоздание отчета.

Эта программа должна быть запрещена, несоблюдение этого запрета подлежит смертной казни.

person Stefan Steiger    schedule 18.08.2010