Simple Usage and Description about Visual Source Safe

  1.  개요
    Visual source safe 는 복원지점과 동시 공동작업 기능을 전달하는 버전 관리 시스템 제품입니다. 이는 애플리케이션 개발 조직이 소프트웨어의 다양한 버전들을 동시에 작업할 수 있게 합니다.
    버전 관리 시스템은 개인 개발자가 파일을 체크아웃하고 변경한 후 다시 파일을 체크인하는 체크인, 체크아웃 모델을 도입합니다. 다른 개발자들은 파일이 체크아웃 되어 있는 동안 변경할 수 없습니다. (VSS 2005에서는 Database 생성 시 이에 대하여 선택할 수 있습니다.) 또한 소스 코드 관리 시스템은 개발자가 문제를 생성한 후에 RollBack하거나 어떤 변경도 할 수 없게 합니다.

  2.  구성

    • Server : 모든 소스를 데이터베이스에 저장합니다.
    • Client: 사용자의 PC에 설치, 서버와 네트워크로 통신하면서 소스관리합니다.
      Example) 동시에 작업하는 프로그래머가 5명이라면, 서버용1대, 클라이언트용5대 서버와 클라이언트는 한 대의 컴퓨터에 같이 쓰일 수 있습니다.
  3.  기능

    • history : 작업 히스토리를 확인할 수 있습니다. 
    • branching/merging: 한 개 이상의 소스 파일 버전을 여러 갈래로 나눠서 여러 사람이 작업하다가 나중에 한꺼번에 합치는 방법입니다.
    • back up, roll back: 어느 날짜 이전의 소스를 가져오거나 그 날짜로 소스를 되돌리는 방법입니다.
    • command line 사용: 소스 파일이 다수인 경우, 배치파일 등을 만들어서 어느 정도 자동화할 수 있습니다.
    • difference: 두 개 이상의 소스 파일이나, 한 개 소스 파일의 지나간 버전간의 소스 내용의 차이를 구별할 수 있습니다.
    • label : Check-in할 때 넣는 주석과는 달리, 프로젝트 전체로 메이저 버전을 넣어서 엮는 방법입니다.
    • reporting 기능 
    • share: 한 개의 파일이 변하면,그게 다른 프로젝트에도 복사 되게 하는 기능입니다. 
    • webdeploy: 웹 페이지 소스를 웹 서버에 올릴 때 쓰는 기능입니다.
  4.  관리 파일

    • 솔루션 파일(*.sln)
    • 프로젝트 파일(예: *.csproj, *.vbproj 파일) : Visual Studio 프로젝트의 런타임 동작을 제어하는 데 사용되는 XML 기반의 응용 프로그램 구성 파일

    소스 제어에 추가할 수 없는 파일은 다음과 같습니다.

    • 솔루션 사용자 옵션 파일(*.suo)
    • 프로젝트 사용자 옵션 파일(예: *.csproj.user, *.vbproj.user 파일)
    • 웹 프로젝트의 가상 루트 위치를 제어하는 웹 정보 파일(예: *.csproj.webinfo, *.vbproj.webinfo)
    • 빌드 출력 파일(예: *.dll 및 *.exe 파일)
  5.   사용 방법
    VSS는 Server와 Client로 구성됩니다.
    Server에서 처음으로 하셔야 할 일은 Repository (저장소)를 생성해야 하는 일입니다.
    File -> New Database 에서 위와 같이 저장소를 지정해 주셔야 합니다.
    여기에는 <프로젝트명>.root 와 같은 VSS에서 필요한 정보 및 폴더가 생성됩니다.

    저장소 마지막 설정은 VSS Model 에 대해서 설정하는 부분입니다. 즉, 해당 파일에 대해서 두 명 이상의 개발자가 접근해서 소스를 수정 할 수 있는 지에 대한 여부를 설정하는 부분입니다.
    Lock-Modify-Unlock Model 을 선택 하시면, Check-Out 한 파일에 대해서는 다른 어떤 개발자가 그 파일에 대하여 Check-In을 하기 전에는 수정을 할 수 없습니다.
    반면, Copy-Modify-Merge Model은 해당 파일을 Check-In 하지 않더라도, 수정할 수 있습니다. 만일 동시에 수정이 되었을 경우 변경 부분에 대하여 Merge를 수행합니다

    Visual Studio 에 VSS 2005 가 설치되면, 위와 같이 소스제어 라는 항목이 생성됩니다.
    소스 제어에 솔루션 추가를 선택하여, VSS에 솔루션을 추가하셔야 합니다.

    VSS 에 솔루션이 추가되면, 위와 같이 솔루션 탐색기에 자물쇠 표시가 됩니다.
    이는 해당 파일들이 Check-In 이 되어 있다는 표시입니다. 해당 파일에 대해서 수정을 하시려면 Check-Out을 해야 합니다.

    Check-Out 을 하기 위하여 다음과 같이 진행 합니다.

     

VSS와 같은 형상관리 툴의 가장 주요한 기능은 Check-Out 과 Check-In 입니다.
Check-Out 은 해당 파일에 대하여 권한을 가지고, 해당 파일을 수정할 수 있으며, 이 파일은 Check-Out 한 사용자가 Check-In을 하기 전 까지, 수정 및 삭제를 못하게 됩니다. (Lock-Modify-Unlock Model을 선택했을 경우, VSS 2005)
처음에 VSS를 접하시는 분들은 Check-Out 과 Check-In에 대해서 이해를 하시면 쉽게 사용하실 수 있으리라 생각됩니다.