¿Cómo hacer una solución como copia limpia sin mapear a TFS? El problema es que este mensaje aparece cuando intento abrirlo. Quiero abrirlo normalmente sin conexión TFS.
visual-studio
tfs
el campeón
fuente
fuente
Para eliminar completamente el enlace de control de origen de TFS, siga estos dos pasos:
*.vssscc
y*.vspscc
extensiones..sln
archivo de su solución en el Bloc de notas y busque y elimine laGlobalSection(TeamFoundationVersionControl)
sección.Más detalles sobre el enlace de referencia
fuente
Edite el archivo de la solución y elimine la siguiente sección. No será lo mismo, pero será similar.
Nota : Para editar el archivo de la solución, vaya a la carpeta del proyecto y luego abra el
YouSolutionName.sln
archivo con el bloc de notas.fuente
No tengo suficiente reputación para comentar, pero solo quería agregar que la solución de Tabish de hecho funciona correctamente para eliminar completamente la solución del control de fuente, especialmente cuando el servidor TFS no es accesible por una razón u otra (por ejemplo, descargó un proyecto que el autor no eliminó de su propio control de código fuente antes de cargar).
Sin embargo, para eliminar por completo todos los rastros de control de código fuente del proyecto y evitar las advertencias que se indican en los otros comentarios a esa respuesta (por ejemplo, "No se pudieron encontrar las asignaciones para la solución ..."), también debe eliminar el siguientes líneas de cada archivo de proyecto en la solución (aparentemente, estos solían estar en el archivo de solución en versiones anteriores de VS, pero en VS2017 se encuentran en el archivo de proyecto para cada proyecto en la solución, por ejemplo, [proyecto] .csproj):
Gracias a la respuesta marcada y otros comentarios aquí por señalar esto:
seguro de fuente visual: cómo eliminar enlaces de la solución sin abrir en Visual Studio
Combinar esto con la respuesta de Tabish parece ser el método más completo para eliminar manualmente una solución del control de fuente.
fuente
Para eliminar el enlace, puede usar Visual Studio: Menú Archivo / Control de fuente / Avanzado / Cambiar control de fuente.
También puede hacerlo usted mismo eliminando cualquier SCC ... de sln y csproj.
Si exporta archivos de origen con frecuencia, puede utilizar ExportSrc . Tiene muchas opciones, como eliminar el enlace TFS (activado de forma predeterminada).
fuente
La mayoría de las respuestas proporcionaron una solución, pero prefiero usar una solución proporcionada por Visual Studio 2017.
En la barra de menú de Visual Studio, vaya a Equipo y seleccione Desconectar de Team Foundation Server . Eso es.
fuente
Acabo de heredar una colección de proyectos de TeamFoundation luego de una compra de M&A y transferencia de tecnología. Había más de 30 soluciones y una gran cantidad de archivos * .vssscc y * .vspscc.
Basado en la entrada de todos arriba, escribí una función de PowerShell para recurrir a una carpeta raíz específica, eliminar los archivos y luego editar los archivos de la solución para eliminar la sección TeamFoundationVersionControl.
El uso es
Remove_TFSfiles "pathname" $booleanflag
.Para ver qué archivos se verían afectados, use
$false
(uses -whatif):Remove_TFSfiles "C:\MyDevFolder" $false
Para eliminar esos archivos, use
$true
:Remove_TFSfiles "C:\MyDevFolder" $true
Esta es la función:
Function Remove_TFSfiles { param( [string]$FolderName = $(throw "-FolderName is required."), [bool]$RemoveFiles = $(throw "-RemoveFiles (either $true or $false) is required.") ) $TFSExtensions = '*.vspscc', '*.vssscc' if ($RemoveFiles) { Get-ChildItem -path $FolderName -force -include $TFSExtensions -Recurse | Remove-Item -Force # Now iterate through any solution files, and whack the TeamFoundationVersionControl section Get-ChildItem -Path $FolderName -Filter "*.sln" -Recurse | ForEach-Object { $slnFilename = $_.Fullname Write-Host -NoNewline "Editing $slnFilename... " $File = Get-Content $slnFilename -raw $Filestr = [regex]::escape("" + $File + "") # The regex escapes must themselves be meta-escaped, therefore "\(" becomes "\\" + "\(" = "\\\(". Did I mention I hate regex? $Result = $Filestr -replace "\\tGlobalSection\\\(TeamFoundationVersionControl\\\).*?EndGlobalSection\\r\\n", "" $result = [regex]::unescape($result) Set-ItemProperty $slnFilename IsReadOnly $false $result | Set-Content $slnFilename Write-Host "Done" } Write-Host -f red "Finished actually removing files and editing *.sln files" } else { Get-ChildItem -path $FolderName -force -include $TFSExtensions -Recurse | Remove-Item -WhatIf Write-Host -f green "Finished pretending to remove files" # Now iterate through any solution files, and whack the TeamFoundationVersionControl section Get-ChildItem -Path $FolderName -Filter "*.sln" -Recurse | ForEach-Object { $slnFilename = $_.Fullname Write-Host "Not Editing $slnFilename" } } }
fuente