2009-06-19 12 views
11

¿Alguien sabe de una buena manera de eliminar enlaces de control de fuente vss para una solución visual studio 2005 y 2008 sin abrirlo en Visual Studio?fuente visual segura - cómo eliminar enlaces de la solución sin abrir en visual studio

Solía ​​usar: del /s /f /a: *.*scc Luego, cuando abrí Visual Studio, me preguntaba y me daba la opción de "eliminar enlaces permanentemente".

Ahora cuando intento esto, se recrea el archivo .vssscc y me dice que mi copia de trabajo contiene una versión diferente del archivo .vsscc. No hay ninguna opción para eliminar los enlaces de control de origen.

El problema real es que estoy tratando de trabajar en una vieja copia etiquetada de la solución de fuente segura. Pero, si abro la solución mientras todavía está obligado a controlar la fuente, obtendrá la última versión del sitio web. Hace esto aunque tengo la opción "Control de fuente -> Entorno -> Obtener todo al abrir una solución o proyecto" sin marcar.

Respuesta

19

Esto funcionó editando el archivo de solución y eliminando los archivos *. * Scc.

Esto es lo que Fuera del archivo de solución:

En la sección:

ProjectSection(WebsiteProperties) = preProject 

me eliminado las siguientes 4 líneas:

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

También se han quitado toda la sección:

GlobalSection(SourceCodeControl) = preSolution 

Después de hacer esto cuando abro la solución, aparece el mensaje con la opción "eliminar enlaces permanentemente".

0

No estoy seguro de la "mejor" respuesta, pero puedo proporcionar algo de información: primero, la única manera segura que he encontrado para separar un proyecto o solución VS2005/2008 y VSS es crear una nueva solución y proyecto con la misma configuración, en carpetas nuevas, copie todos los módulos, clases, formularios, etc. archivos de miembros y luego agréguelos al proyecto y, finalmente, restablezca todos los atributos del proyecto y la solución para que coincidan.

Si alguien tiene un mejor fiable, me encantaría escucharlo, pero hasta ahora todo lo demás que he probado ha resultado en la ruptura del proyecto/solución y la integración de VSS.

AFAIK, la causa de esto es que la vinculación entre los proyectos VSS y VS en la solución.SSC, solución.VSSSCC, solución.SLN, mssccprj.scc, vssver.ssc, y *.% Proj archivos y tal vez en el SUO también (ugh!).

+1

¡Yikes! Definitivamente soy demasiado perezoso para todo eso. –

+0

Pensé que también lo era, hasta que tuve que hacerlo ... :-( – RBarryYoung

3

Sólo la búsqueda de su proyecto para * .scc y .vss, borrar estos, a continuación, abra el proyecto en Visual Studio 2008, que le preguntará si desea eliminar atascamientos o fijarlo

3

Esto es el archivo .cmd que utilizo para eliminar todos los archivos de control de fuente:

:: *.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" 

Después de que se puede abrir en Visual Studio y se les solicite que elimine los enlaces de control de código fuente (que elimina las líneas mencionadas por Seth Reno, es decir.

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

)

O usted podría hacer algún tipo de eliminación de expresiones regulares, pero no tiene código para eso.

+0

Gracias, eso es realmente útil – TENNO

+0

¡Una buena solución! Originalmente estaba buscando una opción de menú en VS. Y como noté en la otra respuesta, hay es uno, pero no parece que va a limpiar los archivos de solo lectura/ocultos/del sistema. Hacer eso primero es igual de fácil, y luego, preguntar por desacoplar significa que ni siquiera tengo que buscar el comando de menú ! :-) – Abacus

6

En Visual Studio

  1. abrir el proyecto, a continuación, Goto
  2. Archivo -> Origen del control -> Cambiar control de código fuente.
  3. seleccione el proyecto y/o la solución
  4. haga clic en Desvincular.

También necesita cambiar los atributos de solo lectura de todos los archivos para leer/escribir para poder modificarlos más tarde.

Cuestiones relacionadas