다음을 통해 공유


MSSCCPRJ.SCC 파일

IDE를 사용하여 Visual Studio 솔루션 또는 프로젝트를 소스 제어에 배치하면 IDE는 두 가지 주요 정보를 받습니다. 이 정보는 소스 제어 플러그 인에서 문자열 형식으로 제공됩니다. 이러한 문자열 "AuxPath" 및 "ProjName"은 IDE에는 불투명하지만 플러그 인이 버전 제어에서 솔루션 또는 프로젝트를 찾는 데 사용됩니다. IDE는 일반적으로 처음에 SccGetProjPath를 호출하여 이러한 문자열을 가져오고 나중에 SccOpenProject를 호출하기 위해 솔루션 또는 프로젝트 파일에 저장합니다. "AuxPath" 및 "ProjName" 문자열이 솔루션 및 프로젝트 파일에 포함된 경우 사용자가 버전 제어에 있는 솔루션 및 프로젝트 파일을 분기, 포크 또는 복사할 때 이들 문자열이 자동으로 업데이트되지 않습니다. 솔루션 및 프로젝트 파일이 버전 제어에서 올바른 위치를 가리키도록 하려면 사용자가 수동으로 문자열을 업데이트해야 합니다. 이들 문자열은 불투명하기 때문에 업데이트 방법이 항상 명확하지는 않을 수 있습니다.

소스 제어 플러그 인은 MSSCCPRJ.SCC라는 특수 파일에 "AuxPath" 및 "ProjName" 문자열을 저장하여 이 문제를 방지할 수 있습니다. 이것은 플러그 인에서 소유하고 유지 관리하는 로컬 클라이언트 쪽 파일입니다. 이 파일은 소스 제어에 배치되지 않지만 플러그 인이 소스 제어되는 파일이 포함된 모든 디렉터리에 대해 생성합니다. 어느 파일이 Visual Studio 솔루션 및 프로젝트 파일인지 확인하기 위해 소스 제어 플러그 인은 파일 확장명을 표준 또는 사용자가 제공한 목록과 비교할 수 있습니다. IDE는 플러그 인이 MSSCCPRJ.SCC 파일을 지원하는 것을 감지하면 더 이상 "AuxPath" 및 "ProjName" 문자열을 솔루션 및 프로젝트 파일에 포함하지 않는 대신 MSSCCPRJ.SCC 파일에서 해당 문자열을 읽습니다.

MSSCCPRJ.SCC 파일을 지원하는 소스 제어 플러그 인은 다음 지침을 준수해야 합니다.

  • MSSCCPRJ.SCC 파일은 디렉터리당 하나만 있을 수 있습니다.

  • MSSCCPRJ.SCC 파일이 지정된 디렉터리 내에서 소스 제어되는 여러 파일에 대한 "AuxPath" 및 "ProjName"을 포함할 수 있습니다.

  • "AuxPath" 문자열 안에 따옴표가 없어야 합니다. 따옴표를 구분 기호로 사용할 수 있습니다(예: 큰따옴표 쌍을 사용하여 빈 문자열을 나타낼 수 있음). IDE는 MSSCCPRJ.SCC 파일을 읽을 때 "AuxPath" 문자열에서 모든 따옴표를 제거합니다.

  • MSSCCPRJ.SCC 파일의 "ProjName" 문자열은 SccGetProjPath 함수에서 반환된 문자열과 정확히 일치해야 합니다. 함수에서 반환된 문자열에 따옴표가 있는 경우 MSSCCPRJ.SCC 파일의 문자열에 따옴표가 있어야 하고 그 반대의 경우도 마찬가지입니다.

  • 파일이 소스 제어에 배치될 때마다 MSSCCPRJ.SCC 파일이 만들어지거나 업데이트됩니다.

  • MSSCCPRJ.SCC 파일이 삭제되면 공급자는 다음에 해당 디렉터리에 관한 소스 제어 작업을 수행할 때 파일을 다시 생성해야 합니다.

  • MSSCCPRJ.SCC 파일은 정의된 형식을 엄격히 따라야 합니다.

MSSCCPRJ.SCC 파일 형식의 그림

다음은 MSSCCPRJ.SCC 파일 형식의 샘플입니다. (줄 번호는 가이드로 제공된 것으로 파일 본문에는 포함되면 안 됩니다.)

  • [줄 1] SCC = This is a Source Code Control file

  • [줄 2]

  • [줄 3] [TestApp.sln]

  • [줄 4] SCC_Aux_Path = "\\server\vss\"

  • [줄 5] SCC_Project_Name = "$/TestApp"

  • [줄 6]

  • [줄 7] [TestApp.csproj]

  • [줄 8] SCC_Aux_Path = "\\server\vss\"

  • [줄 9] SCC_Project_Name = "$/TestApp"

첫 번째 줄은 파일의 용도를 명시하고 이 형식의 모든 파일에 대한 서명 역할을 합니다. 이 줄은 모든 MSSCCPRJ.SCC 파일에서 정확하게 다음과 같이 표시됩니다.

SCC = This is a Source Code Control file

다음 섹션에서는 대괄호 안의 파일 이름으로 표시된 각 파일에 대한 설정을 자세히 설명합니다. 이 섹션은 추적 중인 각 파일에 대해 반복됩니다. 이 줄은 파일 이름의 샘플, 즉 [TestApp.csproj]입니다. IDE에는 다음 두 줄이 필요합니다. 그러나 정의된 값의 스타일을 정의하지는 않습니다. 변수는 SCC_Aux_PathSCC_Project_Name입니다.

SCC_Aux_Path = "\\server\vss\"

SCC_Project_Name = "$/TestApp"

이 섹션에는 끝 구분 기호가 없습니다. 파일의 이름과 파일에 표시되는 모든 리터럴은 scc.h 헤더 파일에 정의됩니다. 자세한 내용은 소스 제어 플러그 인을 찾기 위한 키로 사용되는 문자열을 참조하세요.

참고 항목