Безопасный визуальный источник - как удалить привязки из решения без открытия в visual studio

Кто-нибудь знает о хорошем способе удаления привязок контроля источника vss для визуальной студии 2005 и 2008, не открывая его в visual studio?

Я использовал: del /s /f /a: *.*scc Затем, когда я открыл визуальную студию, мне предложили бы и дать мне возможность "навсегда удалить привязки".

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

Реальная проблема заключается в том, что я пытаюсь работать с старой помеченной копией решения из безопасного источника. Но, если я открою решение, пока он все еще связан с контролем источника, он получит последнюю версию веб-сайта. Он делает это, несмотря на то, что у меня есть опция "Source Control → Environment → Get all при открытии решения или проекта", который не установлен.

Ответ 1

У меня это получилось, отредактировав файл решения, а также удалив файлы *. * scc.

Вот что я удалил из файла решения:

В разделе:

ProjectSection(WebsiteProperties) = preProject

Я удалил следующие 4 строки:

        SccProjectName = ""$/HOS_amend.root/HOS", ENWBAAAA"
        SccAuxPath = ""
        SccLocalPath = ".."
        SccProvider = "MSSCCI:Microsoft Visual SourceSafe"

Также удалена вся секция:

GlobalSection(SourceCodeControl) = preSolution

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

Ответ 2

В Visual Studio

  • откройте свой проект, затем перейдите
  • Файл → Управление источником → Изменить контроль источника.
  • выберите проект и/или решение
  • нажмите "Отменить".

Вам также необходимо изменить атрибуты только для чтения всех файлов для чтения/записи, чтобы иметь возможность их модифицировать позже.

Ответ 3

Просто выполните поиск вашего проекта для *.scc и .vss, удалите все это, затем откройте свой проект в Visual Studio 2008, который спросит вас, хотите ли вы удалить привязки или исправить его.

Ответ 4

Это файл .cmd, который я использую для удаления всех файлов управления версиями:

:: *.scc
:: ===========================================================================

attrib /s -h -s "*.scc"  :: Must get rid of system and hidden attributes
attrib /s -r "*.scc"     :: at same time
del /s "*.scc"

:: *.vssscc
:: ===========================================================================

attrib /s -h -s "*.vssscc"
attrib /s -r "*.vssscc"
del /s "*.vssscc"

:: *.vspscc
:: ===========================================================================

attrib /s -h -s "*.vspscc"
attrib /s -r "*.vspscc"
del /s "*.vspscc"

:: *.vsscc
:: ===========================================================================

attrib /s -h -s "*.vsscc"
attrib /s -r "*.vsscc"
del /s "*.vsscc"

После этого вы можете либо открыть в Visual Studio, либо получить приглашение удалить привязки управления версиями (что удаляет строки, упомянутые Seth Reno, т.е.

    SccProjectName = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
    SccAuxPath = "x"
    SccLocalPath = "xxx"
    SccProvider = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"

)

Или вы можете сделать какое-то удаление регулярных выражений, но для этого у меня нет кода.

Ответ 5

Я не уверен в "лучшем" ответе, но я могу предоставить некоторую информацию: сначала единственный верный способ, с которым я столкнулся, чтобы отделить проект или решение VS2005/2008, а VSS - создать новое решение и проектировать с теми же настройками, в новых папках, копировать все модули, классы, формы и т.д. файлы-члены, а затем добавлять их в проект и, наконец, reset все атрибуты проекта и решения для соответствия.

Если у кого-то есть лучший надежный способ сделать это, я бы хотел его услышать, но до сих пор все остальное, что я пробовал, привело к нарушению как проекта/решения, так и интеграции VSS.

AFAIK, причина этого в том, что привязка между VSS и VS-проектами в файлах solution.SSC, solution.VSSSCC, solution.SLN, mssccprj.scc, vssver.ssc и *.% proj и, возможно, в SUO также (тьфу!).