솔루션에서 TFS 연결 제거
TFS에 매핑하지 않고 솔루션을 깨끗한 복사본으로 만드는 방법은 무엇입니까? 문제는이 메시지를 열려고 할 때 표시된다는 것입니다. TFS 연결없이 정상적으로 열고 싶습니다.
소스 제어에서 솔루션을 영구적으로 완전히 분리하려면 다음을 시도하십시오.
- TFS에 연결하지 않으려면 '아니오'버튼을 클릭하십시오.
- 파일 메뉴에서 소스 제어 옵션으로 이동하여 바인딩을 지 웁니다. 특히 파일-소스 제어-고급-소스 제어 변경 ...을 원할 것입니다.
- 솔루션을 저장하십시오.
다음에 솔루션을 열 때 TFS에 연결하라는 메시지가 표시되지 않습니다.
TFS 소스 제어 바인딩을 완전히 제거하려면 다음 두 단계를 수행하십시오.
- 솔루션의 폴더로 이동하여
*.vssscc
및*.vspscc
확장자가있는 모든 파일을 찾아 삭제하십시오 . .sln
메모장에서 솔루션 파일을 열고GlobalSection(TeamFoundationVersionControl)
섹션을 찾아 제거합니다 .
솔루션 파일을 편집하고 다음 섹션을 제거하십시오. 동일하지는 않지만 비슷할 것입니다.
GlobalSection(TeamFoundationVersionControl) = preSolution
SccNumberOfProjects = 2
SccEnterpriseProvider = {4CA58AB2-18FA-4F8D-95D4-32DDF27D184C}
SccTeamFoundationServer = <YourTFSURL>
SccLocalPath0 = .
SccProjectUniqueName1 = .
SccLocalPath1 = .
EndGlobalSection
저는 논평 할만한 평판이 충분하지 않지만 Tabish의 솔루션이 실제로 올바르게 작동하여 소스 제어에서 솔루션을 완전히 제거한다는 점을 추가하고 싶었습니다. 특히 TFS 서버에 어떤 이유로 든 연결할 수없는 경우 (예 : 작성자가 업로드하기 전에 자신의 소스 제어에서 제거하지 않은 프로젝트).
그러나 프로젝트에서 소스 제어의 모든 흔적을 완전히 제거하고 해당 답변에 대한 다른 주석 (예 : "솔루션에 대한 매핑을 찾을 수 없습니다 ...")에 표시된 경고를 방지하려면 다음을 제거해야합니다. 솔루션에있는 모든 프로젝트 파일의 다음 줄 (이전 버전 VS의 솔루션 파일에 있었지만 VS2017에서는 솔루션의 각 프로젝트에 대한 프로젝트 파일 (예 : [project] .csproj))에서 찾을 수 있습니다.
SccProjectName = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
SccAuxPath = "x"
SccLocalPath = "xxx"
SccProvider = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
이것을 지적 해 주신 표시된 답변 및 기타 의견에 감사드립니다.
Visual Source Safe-Visual Studio에서 열기없이 솔루션에서 바인딩을 제거하는 방법
이것을 Tabish의 답변과 결합하는 것이 소스 제어에서 솔루션을 수동으로 제거하는 가장 완벽한 방법 인 것 같습니다.
바인딩을 제거하려면 Visual Studio (메뉴 파일 / 소스 제어 / 고급 / 소스 제어 변경)를 사용할 수 있습니다.
sln 및 csproj에서 SCC ...를 제거하여 직접 수행 할 수도 있습니다.
소스 파일을 자주 내보내는 경우 ExportSrc 를 사용할 수 있습니다 . TFS 바인딩 제거 (기본적으로 ON)와 같은 많은 옵션이 있습니다.
대부분의 답변은 솔루션을 제공했지만 Visual Studio 2017에서 제공하는 솔루션을 사용하고 싶습니다.
Visual Studio의 메뉴 모음에서 Team으로 이동하여 Disconnect from Team Foundation Server를 선택 합니다. 그게 다야.
저는 M & A 인수 및 기술 이전에 이어 TeamFoundation 프로젝트 컬렉션을 상속 받았습니다. 30 개 이상의 솔루션과 * .vssscc 및 * .vspscc 파일이 너무 많았습니다.
위의 모든 사람의 입력을 기반으로 지정된 루트 폴더를 재귀하고 파일을 삭제 한 다음 솔루션 파일을 편집하여 TeamFoundationVersionControl 섹션을 제거하는 powershell 함수를 작성했습니다.
사용법은 Remove_TFSfiles "pathname" $booleanflag
영향을받는 파일을 보려면 $ false를 사용하십시오 (-whatif 사용).
Remove_TFSfiles "C:\MyDevFolder" $false
실제로 해당 파일을 삭제하려면 $ true를 사용하십시오.
Remove_TFSfiles "C:\MyDevFolder" $true
여기에 기능이 있습니다
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) {
dir -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)
sp $slnFilename IsReadOnly $false
$result | set-content $slnFilename
write-host "Done"
}
write-host -f red "Finished actually removing files and editing *.sln files"
} else {
dir -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"
}
}
}
참고 URL : https://stackoverflow.com/questions/26990033/remove-tfs-connection-from-solution
'code' 카테고리의 다른 글
C ++의 함수형 프로그래밍. (0) | 2020.11.22 |
---|---|
ORA-01461 : LONG 열에 삽입하기 위해서만 LONG 값을 바인드 할 수 있습니다-질의시 발생합니다 (0) | 2020.11.22 |
Swift에서 AVPlayer를 어떻게 반복합니까? (0) | 2020.11.22 |
자바 십진 문자열 형식 (0) | 2020.11.22 |
반올림 정수 나누기 (잘라 내기 대신) (0) | 2020.11.22 |