'Visual SourceSafe'에 해당되는 글 1건

320x100

Visual SourceSafe 2005사용법

Posted on 2010. 5. 19. 16:57
Filed Under Visual C++


팀 개발 환경에서 Visual Studio .NET 사용

Mark White

Microsoft Corporation

요약: 이 문서에서는 팀 개발 환경에서 Visual Studio .NET 베타 2를 사용하는 방법에 대한 지침을 제공합니다. 동일한 프로젝트에서 여러 개발자가 함께 작업해야 하고 소스 제어를 위해 Visual SourceSafe가 사용된다고 가정합니다(15페이지/인쇄 페이지 기준).

목차

소개 소개
파일 공유 액세스 모드 설정 파일 공유 액세스 모드 설정
Visual SourceSafe에서 프로젝트 만들기 Visual SourceSafe에서 프로젝트 만들기
Visual SourceSafe에서 프로젝트 액세스 Visual SourceSafe에서 프로젝트 액세스
파일 수정 파일 수정
변경 내용 제공 변경 내용 제공
최신 버전 가져오기 최신 버전 가져오기
오프라인 작업 오프라인 작업
팁과 트릭팁과 트릭
Visual Studio .NET 베타 2 문제 Visual Studio .NET 베타 2 문제
요약 요약

소개

Microsoft® Visual Studio® .NET 베타 2에서 웹 응용 프로그램 팀 개발을 위해 권장되는 방법은 "파일 공유" 액세스 모드를 기준으로 합니다. 각 개발자는 자신의 가상 루트에 있는 파일 복사본에서 작업하지만 모든 사용자가 중앙 Microsoft® Visual SourceSafe® 프로젝트에서 파일을 체크 인/체크 아웃합니다. 이 방법은 고립화를 제공하므로 한 팀 구성원이 변경한 내용이 전체 팀의 작업 사본에 영향을 미치지 않습니다.

이 방법은 Microsoft® FrontPage® 웹 액세스를 사용하는 Microsoft® Visual InterDev® 6.0에 사용되는 방법과 다릅니다. 파일 공유 웹 액세스는 Visual Studio .NET 베타 2의 기본 액세스 모드이며 팀 개발에 사용하는 것이 좋습니다.

Visual SourceSafe 통합은 Visual Studio 6.0, Microsoft® Visual C++® 및 Microsoft® Visual Basic® 프로젝트에서 사용되는 것처럼 Visual Studio .NET에서 작업합니다. 개발자는 자신의 프로젝트를 로컬로 만들 수 있으며(http://localhost를 사용할 경우) 일반 Visual SourceSafe 프로젝트에서 체크 인/체크 아웃할 수 있습니다. 이 또한 팀의 모든 개발자가 중앙 서버에 있는 동일한 가상 루트에서 작업하는 Visual InterDev 6.0과 다릅니다.

이 문서에서는 웹 응용 프로그램의 개발에 대해 설명하고 있으나, 이 방법은 Visual Studio .NET 베타 2에서 웹이 아닌 응용 프로그램을 개발할 때도 동일하게 적용됩니다.

응용 프로그램을 개별 프로젝트로 적절히 분할하고, ASP.NET 사용자 컨트롤, HTTP 모듈 및 클래스 라이브러리를 사용할 때도 팀웍을 발휘할 수 있는 효과적인 방법으로 간주됩니다.

파일 공유 액세스 모드 설정

Visual Studio .NET 베타 2에서도 파일 공유는 기본 액세스 모드입니다. 액세스 모드가 올바르게 설정되었는지 확인하려면 Tools 메뉴에서 Options을 클릭하고 Projects를 클릭한 다음 Web Settings을 클릭합니다. 기본 설정 액세스 모드를 File share로 설정한 다음 OK를 클릭합니다. 이렇게 하면 웹 프로젝트를 Visual SourceSafe에 추가할 수 있습니다.

FrontPage 액세스 모드를 사용하는 기존 프로젝트가 있는 경우 해당 액세스 모드를 File share로 변경할 수 있습니다. Solution Explorer를 열고 해당 프로젝트를 마우스 오른쪽 단추로 클릭한 다음 Properties를 클릭합니다. Common Properties를 클릭한 다음 Web Settings를 클릭합니다. 웹 액세스 모드를 File share로 설정한 다음 OK를 클릭합니다. 이제 솔루션을 저장하고 닫은 다음 다시 열어서 프로젝트 설정 변경을 적용해야 합니다.

이 문서의 나머지 부분에서는 파일 공유 액세스 모드를 사용하는 것으로 간주합니다.

Visual SourceSafe에서 프로젝트 만들기

첫째 팀 구성원은 하나 이상의 프로젝트가 포함된 솔루션을 만듭니다. (파일 공유 액세스를 사용하게 되면, 다른 시스템에 프로젝트를 만드는 경우 여전히 프로젝트 위치를 http://myserver와 같이 지정하지만, \\myserver\c$\inetpub\wwwroot 또는 \\myserver\wwwroot$로의 UNC(Universal Naming Convention)가 필요합니다.) 다른 팀 구성원이 작업을 시작할 수 있도록 솔루션이 준비되면 첫째 팀 구성원은 Solution Explorer에서 해당 솔루션이나 프로젝트 파일을 마우스 오른쪽 단추로 클릭한 다음 Add Solution to Source Control을 선택합니다. File 메뉴에서 Source Control을 클릭한 다음 Add Solution to Source Control을 클릭할 수도 있습니다.

솔루션에 파일 공유 액세스 모드를 사용하는 웹 프로젝트가 있는 경우 다음과 같은 경고가 나타납니다.

teamworvs1.gif

그림 1. 파일 공유 경고 대화 상자

이 경고는 무시해도 됩니다. Continue를 클릭합니다.

IDE(Integrated Development Environment)에서는 Visual SourceSafe 데이터베이스 서버를 묻는 메시지와 Visual SourceSafe에서 솔루션 파일과 솔루션의 개별 프로젝트를 저장할 위치를 지정하라는 메시지가 차례로 표시됩니다.

Visual Studio .NET에서의 기본 동작은 "Admin 사용자"를 사용하는 기본 Visual SourceSafe 데이터베이스(일반적으로 Common)에 사용자를 로그온하는 것입니다. 기본 사용자 이름과 암호는 Visual SourceSafe에서 제공합니다. 기본 Admin 사용자 암호는 비어 있기 때문에 솔루션을 Visual SourceSafe에 추가할 때 Visual SourceSafe 데이터베이스 서버를 묻는 메시지가 표시되지 않을 수도 있습니다. 대신 기본 Visual SourceSafe 데이터베이스에 자동으로 로그온하여 Add to SourceSafe Project 대화 상자로 바로 이동할 수 있습니다. 로그인 대화 상자는 기본적으로 화면에 표시됩니다. (베타 버전 6.0c를 비롯한 최신 Visual SourceSafe 버전에서는 로그인 대화 상자가 표시되지 않습니다. Visual SourceSafe 6.0c 최종판에서는 기본적으로 로그인 대화 상자를 표시합니다.)

이 문제를 해결하려면 Tools 메뉴에서 Options을 클릭하고 Source Control을 클릭한 다음 SCC Provider를 클릭합니다. 로그인 ID를 해당 사용자로 변경합니다. Advanced를 클릭하고 Integration 탭을 클릭합니다. Choose SourceSafe Database에서 Prompt를 선택합니다.

teamworvs2.gif

그림 2. Visual SourceSafe 프로젝트 추가

솔루션에 포함된 각 웹 프로젝트를 저장할 때도 Visual SourceSafe 위치를 제공하라는 동일한 대화 상자가 표시됩니다. 대화 상자가 처음 나타날 때 모든 프로젝트에 대한 위치를 지정하려면 솔루션과 같은 드라이브에 있는 비 웹 프로젝트의 Visual SourceSafe 위치를 해당 솔루션으로 설정합니다. 그 다음에 나타나는 대화 상자에서는 솔루션 내의 각 웹 프로젝트의 Visual SourceSafe 위치를 묻습니다. Visual SourceSafe에 특정 프로젝트를 추가하지 않으려면 Cancel을 클릭하고 Add selected projects to source control을 대신 선택합니다. 이 옵션을 선택하면 추가할 프로젝트를 제어할 수 있습니다. 소스 제어에 선택한 프로젝트를 추가하는 방법은 본 기사 후반부에서 설명합니다. Solution Explorer는 취소한 프로젝트를 체크 아웃된 것으로 표시하며, 프로젝트 파일은 Visual SourceSafe에 있지 않습니다. 이 시나리오에서 체크 아웃된 특수 문자는 Visual SourceSafe에 일시 보류 중인 추가 항목을 가리키는 데 사용됩니다.

Visual SourceSafe 위치를 설정할 때 솔루션 파일과 프로젝트를 동일한 Visual SourceSafe 폴더에 저장하거나 별도의 폴더에 저장할 수 있습니다. Visual Studio.NET이 모든 비 웹 프로젝트 교체를 제어하도록 하는 것이 바람직합니다. 그러나 프로젝트가 다른 웹 프로젝트와 충돌하지 않도록 하기 위해서는 각 웹 프로젝트가 해당 폴더에 놓여야 합니다. 보통 여러 프로젝트에 이름이 같은 파일(예: WebForm1.aspx)이 존재합니다. 한 Visual SourceSafe 폴더에 둘 이상의 프로젝트를 둘 경우, 파일 이름이 폴더에 이미 존재하면 그림 3의 대화 상자가 나타납니다.

teamworvs3.gif

그림 3. Visual SourceSafe 프로젝트에 중복 파일을 추가하려   표시되는 경고 대화 상자

Select different location을 클릭한 다음 앞에서 설명한 과정을 계속합니다.

Visual SourceSafe에 이미 추가된 솔루션에 Visual SourceSafe에 없는 기존 프로젝트나 새 프로젝트를 추가하려면 먼저 프로젝트를 솔루션에 추가하고, Solution Explorer에서 해당 솔루션을 마우스 오른쪽 단추로 클릭한 다음 다음 중 하나를 수행합니다.

  • Add를 클릭한 다음 New Project를 클릭합니다.

  • Add를 클릭한 다음 Existing Project를 클릭합니다.

Solution Explorer에 해당 프로젝트가 체크 아웃된 것으로 표시되지만 파일은 Visual SourceSafe에 없습니다. 이제 Solution Explorer에서 해당 프로젝트를 선택하고 File 메뉴에서 Source Control을 클릭한 다음 마지막으로 Add Selected Projects to Source Control을 클릭합니다. 앞에서 설명한 것처럼 Visual SourceSafe에서 프로젝트를 저장할 위치를 지정하라는 메시지가 표시됩니다. 비 웹 프로젝트의 경우에는 File 메뉴에서 Check In 명령을 사용하여 Visual Studio .NET이 Visual SourceSafe 위치를 제어하도록 하는 것이 좋습니다.

Visual SourceSafe에서 프로젝트 액세스

각 팀 구성원은 Visual Source Safe에서 프로젝트를 처음 액세스할 때 File 메뉴에서 Source Control을 클릭한 다음, Open Project From Source Control을 클릭해야 합니다.

그러면 IDE에서 팀 구성원에게 Visual SourceSafe 데이터베이스 서버를 묻는 메시지가 표시되고, 솔루션 파일과 비 웹 프로젝트를 복사할 로컬 폴더를 지정하라는 메시지와 Visual SourceSafe 프로젝트를 선택하라는 메시지가 표시됩니다. 그림 4의 예제 스크린샷에서는 MyWebProjects를 열고 솔루션 파일을 D:\Documents and Settings\marwhite\My Documents\Visual Studio Projects에 저장합니다.

teamworvs4.gif

그림 4. Visual SourceSafe 프로젝트에 대한 로컬 폴더 위치 설정

솔루션 파일은 기본적으로 C:\Documents and Settings\<사용자 이름>\My Documents\Visual Studio Projects에 복사됩니다. Tools 메뉴에서 Options을 클릭하고 Environment를 클릭한 다음 Projects and Solutions를 클릭하여 이 위치를 다시 구성할 수 있습니다.

솔루션 파일과 프로젝트 파일을 개별 폴더에 저장한 경우 다음 대화 상자가 표시되지 않지만, 동일한 Visual SourceSafe 위치에 저장한 경우에는 IDE에 솔루션 파일을 선택하라는 메시지가 표시됩니다.

teamworvs5.gif

그림 5. 솔루션 파일 선택

이 지점에서 솔루션에 하나 이상의 파일 공유 웹 프로젝트가 있으면 Set Project Location 대화 상자가 표시됩니다.

teamworvs6.gif

그림 6. Set Project Location 대화 상자

웹 프로젝트마다 이 대화 상자를 사용하여 격리된 웹 사이트의 위치를 선택해야 합니다. 웹 프로젝트를 서버(예: http://myserver/myproject_myroot) 또는 로컬 컴퓨터(예: http://localhost/myproject)에 저장할 수 있습니다. Visual Studio에서는 격리된 웹 프로젝트마다 가상 루트 하나를 만듭니다.

참고   앞에서 설명한 것처럼 처음에만 (File 메뉴에서 Source Control을 클릭하고 Open Project From Source Control을 클릭합니다.) 다음에 솔루션을 열 때는 로컬 디스크에 있는 솔루션 파일을 사용해야 합니다. 웹 서버나 Visual SourceSafe에서 응용 프로그램을 열지 마십시오.

Visual SourceSafe에 있는 기존 프로젝트를 솔루션에 추가하려면 File 메뉴에서 Source Control을 클릭하고 Add Project from Source Control...을 클릭합니다. IDE에 앞에서 설명한 대화 상자가 표시됩니다.

파일 수정

팀 구성원들은 코드 작업을 할 때도 일반 작업을 할 때처럼 작업합니다. 개발 환경에서는 파일을 수정하면 파일을 체크 아웃하라는 메시지가 자동으로 표시됩니다. 프로젝트에서 파일을 추가하고 제거하는 작업에는 프로젝트 파일 체크 아웃이 포함됩니다.

변경 내용 제공

팀에 새로 변경된 내용을 제공하려는 팀 구성원은 소스 코드를 변경하고 테스트한 다음 디버깅해야 합니다. 변경한 내용이 만족스러우면 파일을 선택하고 마우스 오른쪽 단추를 클릭한 다음 Check In을 클릭하거나, File 메뉴에서 Source Control을 클릭한 다음 Check In을 클릭합니다. 그러면 변경 내용이 Visual SourceSafe에 표시됩니다.

최신 버전 가져오기

팀의 최신 변경 내용을 가져오려는 팀 구성원은 Solution Explorer에서 솔루션 파일을 선택하고 마우스 오른쪽 단추를 클릭한 다음 Get Latest Version (Recursive)를 클릭해야 합니다. 응용 프로그램의 최신 버전을 생성할 경우에도 이 프로세스를 수행해야 합니다.

오프라인 작업

Visual Studio .NET 베타 2에서 제공하는 기능 중 Visual Studio .NET 베타 1에 비해 향상된 영역 중 하나는 오프라인 작업 기능입니다. 오프라인 작업은 많은 개발자들 특히, 많은 시간을 사무실 밖이나 여행을 하면서 보내야 하는 개발자들에게 중요한 시나리오입니다.

팀 구성원은 오프라인 작업을 사용하여 Visual SourceSafe와 통합된 솔루션 및 프로젝트를 오프라인으로 이동할 수 있습니다. 즉, 팀 구성원은 회사 네트워크과 Visual SourceSafe 데이터베이스로부터의 연결이 끊어진 상태로 파일을 체크 아웃할 수 있습니다. 팀 구성원은 사무실로 돌아와서 해당 솔루션과 프로젝트를 다시 연결하여 IDE에서 Visual SourceSafe 데이터베이스에 보관된 복사본과 자신의 복사본 간의 변경 내용을 동기화할 수 있습니다.

오프라인으로 이동

솔루션과 프로젝트를 오프라인으로 이동하려면 File 메뉴에서 Source Control을 클릭한 다음 Change Source Control을 클릭합니다. IDE에 다음 대화 상자가 표시됩니다.

teamworvs7.gif

그림 7. Visual SourceSafe에서 솔루션 프로젝트 연결/연결 끊기

솔루션과 프로젝트를 오프라인으로 이동하려면 Connected 확인란의 선택을 취소합니다.

오프라인으로 이동하기 전에 이미 체크 아웃된 파일은 체크 아웃된 상태로 유지됩니다. 데이터가 손상될 수 있는 환경을 피하려면 오프라인으로 이동하기 전에 오프라인에서 작업할 파일을 체크 아웃하는 것이 좋습니다.

오프라인에서 파일 체크 아웃

오프라인으로 작업하는 동안 파일은 일반적인 방법으로 체크 아웃됩니다. 오프라인에서 작업하는 동안 파일을 처음으로 체크 아웃하려고 하면 다음 대화 상자가 표시됩니다.

teamworvs8.gif

그림 8. 연결이 끊어진 동안 파일 체크 아웃

오프라인 체크 아웃을 사용하려면 그림 8의 대화 상자가 표시되지 않도록 해야 합니다. Don't show this dialog again을 선택한 다음 Check out (disconnected)을 클릭합니다. 그림 9에 나와 있는 것과 같이 다른 오류 대화 상자가 표시됩니다. 이 대화 상자는 무시해도 됩니다. OK를 클릭하십시오.

teamworvs9.gif

그림 9. 연결이 끊어진 동안 처음으로 파일을 체크 아웃할  표시되는 오류 대화 상자 

오프라인에서 작업하는 동안 파일을 다음에 체크 아웃하려고 하면 체크 아웃이 완료됩니다. 위에서 설명한 추가 오류 대화 상자는 RTM에 의해 표시되는 Visual Studio .NET 베타 2의 사소한 버그입니다.

팀 구성원이 오프라인에서 파일을 체크 아웃하면 체크 아웃된 파일에 대한 정보가 프로젝트의 일부로 저장되고 체크 아웃된 파일이 읽기/쓰기로 표시됩니다.

오프라인에서 파일 체크 인

오프라인에서는 네트워크에 연결되어 있지 않기 때문에 체크 인 명령을 사용할 수 없으며, 따라서 파일을 체크 인할 수 없습니다. 프로젝트를 다시 온라인으로 이동할 때 오프라인에서 체크 아웃했던 파일을 알기 쉽게 주의해야 합니다.

온라인으로 이동

기본적으로 오프라인으로 이동할 때와 동일합니다. 솔루션과 프로젝트를 온라인으로 이동하려면 File 메뉴에서 Source Control을 클릭한 다음 Change Source Control을 클릭합니다. 오프라인으로 이동할 때와 동일한 대화 상자가 표시됩니다. Connected를 선택하여 솔루션과 프로젝트를 온라인으로 이동합니다.

변경 내용 동기화

오프라인에서 변경한 내용을 Visual SourceSafe 데이터베이스에 포함된 솔루션 및 프로젝트 파일과 동기화하려면 오프라인에서 체크 아웃한 각 파일을 Visual SourceSafe에서 체크 아웃하고 해당 파일의 복사본을 Visual SourceSafe로 체크 인해야 합니다.

오프라인으로 이동한 후 각 파일을 오프라인에서 체크 아웃하면 다음과 같은 두 대화 상자가 표시됩니다.

teamworvs10.gif

그림 10. 연결이 끊어진 상태로 체크 아웃한 파일 조정 

우선 Check out(그림 10)을 클릭합니다.

teamworvs11.gif

그림 11. Visual SourceSafe에서 파일 체크 아웃 

Leave this file을 선택하여 수정한 내용을 Visual SourceSafe에 포함된 버전으로 덮어쓰지 않게 합니다. 그런 다음 수정한 파일을 체크 인해야 합니다.

경고   다른 사용자가 파일을 이미 체크 인한 상태에서 사용자가 같은 파일을 체크 인하는 경우에는 다른 사용자의 변경 사항을 덮어쓰게 됩니다.
참고   이러한 대화 상자는 오프라인에서 체크 아웃한 파일에 대해서만 표시되며, 오프라인으로 이동하기 전에 이미 체크 아웃한 파일에 대해서는 표시되지 않습니다. 첫째 대화 상자에 표시된 것처럼 데이터가 손실될 수 있으므로 주의하시기 바랍니다.

오프라인에서 작업하는 동안 파일 하나를 체크 아웃하고 다른 팀 구성원이 같은 파일을 체크 아웃하여 수정한 다음 체크 인한 경우 주의하지 않고 해당 파일을 체크 인하면 다른 팀 구성원이 수정한 내용을 덮어쓰게 됩니다. 덮어쓰는 일이 없도록 하려면 오프라인 상태에서 파일 체크 아웃을 하지 않습니다. 오프라인으로 이동하기 전에 항상 작업할 파일을 체크 아웃하십시오. 오프라인으로 이동하기 전에 작업할 파일을 체크 아웃하는 것이 불가능하거나 잊고 못한 경우에는 변경 사항을 동기화할 때 파일을 수동으로 병합하시기 바랍니다.

오프라인에서 작업하는 동안 파일을 체크 아웃한 경우 다른 사용자가 같은 파일을 체크 아웃하면 솔루션과 프로젝트를 온라인으로 이동할 때 다음과 같은 대화 상자가 표시됩니다.

teamworvs12.gif

그림 12. 이미 체크 아웃된 파일을 다시 체크 아웃하려고   표시되는 경우 

OK를 클릭합니다. Solution Explorer 내의 관련 파일 옆에 작은 경고 기호가 표시되어 해당 파일에 여전히 주의가 필요함을 나타냅니다.

마지막으로 오프라인에서 프로젝트에 파일을 추가한 경우 해당 프로젝트를 온라인으로 이동할 때 새 파일을 Visual SourceSafe에 체크 인하기만 하면 됩니다.

팁과 트릭

일관성 있는 URL

모든 개발자가 가상 루트에 대해 일관적인 위치(예: http://localhost/projectName)를 사용하는 것이 좋습니다. 특정 서버 이름을 사용하면 사용자들 간에 프로젝트 파일을 공유하기가 어려워질 수 있기 때문에 사용하지 않는 것이 좋습니다. 특정 서버 이름을 사용해야 하는 경우 web.config 파일에서 새 <configSections>를 정의하고 해당 를 사용하여 응용 프로그램에 대한 사용자 지정 설정을 정의합니다. 웹 참조를 사용하는 경우에는 웹 서비스를 로컬에 호스트하고 웹 참조로 http://localhost/webServiceName을 사용하거나, 웹 참조 URL 동작을 동적(Dynamic)으로 설정합니다. 동적 URL 동작은 나중에 설명하겠습니다.

일관성 있는 참조 경로

비시스템 어셈블리에 참조를 추가할 때 IDE는 어셈블리를 프로젝트에 로컬로 복사합니다. 웹 응용 프로그램에서는 어셈블리가 bin 디렉터리에 복사됩니다. 어셈블리를 로컬로 복사할지 여부를 제어하려면 해당 어셈블리를 마우스 오른쪽 단추로 클릭한 다음 Properties를 클릭합니다. 비시스템 어셈블리에서는 Copy LocalTrue로 설정해야 합니다. 이것은 기본값이며 대부분의 경우에 권장됩니다.

참조를 추가하면 IDE는 사용자 프로젝트 파일에서 참조 경로를 업데이트하여 어셈블리가 생성된 실제 위치를 나타냅니다. 프로젝트를 마우스 오른쪽 단추로 클릭하고 Properties를 클릭합니다. Common Properties를 클릭한 다음 References Paths를 클릭합니다. 대화 상자(그림 13)에서 Cancel을 클릭합니다.

teamworvs13.gif

그림 13. 참조 경로 표시 

참조 경로는 프로젝트 속성으로 표시되지만 실제로는 설정된 프로젝트, 컴퓨터 및 사용자와 관련이 있습니다. 이것은 개발자 1이 어셈블리에 참조를 추가하고 프로젝트 파일을 체크 인할 경우 개발자 2가 해당 프로젝트 파일의 최신 버전을 가져오면 어셈블리는 Solution Explorer에 표시되지만, 개발자 2는 같은 참조 경로를 가질 수 없기 때문에 빌드가 실패하게 됨을 의미합니다.

이 문제를 해결하려면 팀 내의 모든 개발자가 팀 전체에 일관성 있는 참조 경로에 동의해야 합니다. 이 방법을 수행하면 개발자는 다른 개발자가 참조를 추가한 후 솔루션이나 프로젝트 파일에 아무것도 수행할 필요가 없습니다. 이 경우 다음을 가정합니다.

  • 참조 경로가 이미 설정되어 있고 각 프로젝트 작업에 대해 한 번만 수행해야 합니다.

  • 올바른 위치의 로컬 디스크에 참조 어셈블리가 이미 있습니다.

이 방법에서는 표준 빌드-출력 위치를 정의해야 하며 모든 참조가 해당 위치에 있는 어셈블리를 참조해야 합니다. 이것이 너무 제한적이면 참조 경로에서 여러 경로를 쉼표로 분리할 수 있습니다.

웹 참조 추가

이것은 Visual Studio .NET 베타 1과 비교하여 Visual Studio .NET 베타 2에서 향상된 다른 영역입니다.

프로젝트가 포함된 폴더에 Web References 폴더가 표시됩니다. 웹 참조를 추가하면 Web References 폴더 아래에 새 폴더가 만들어집니다. 새 폴더에는 웹 서비스를 호스트하는 서버에 따라 이름이 지정되고 WSDL, DISCO 및 생성된 웹 서비스 클라이언트 프록시가 포함됩니다. 폴더 이름은 웹 서비스 클라이언트 프록시에 대한 이름 공간으로도 사용됩니다.

이 폴더와 파일들은 웹 참조를 추가할 때 Visual SourceSafe 프로젝트에 추가됩니다. 웹 참조를 업데이트하면 이 파일들도 체크 아웃되고 업데이트된 다음 다시 체크 인됩니다. 웹 참조를 마우스 오른쪽 단추로 클릭한 다음 Update Web Reference를 클릭합니다.

웹 참조를 추가하면 웹 서비스 URL이 웹 서비스 클라이언트 프록시 내에 하드코드됩니다. 그러나 .config 파일에서 웹 서비스 URL을 읽을 수 있도록 웹 서비스 클라이언트 프록시의 동작을 변경할 수 있습니다. 웹 참조를 마우스 오른쪽 단추로 클릭하고 Properties를 클릭한 다음 URL 동작을 Static에서 Dynamic으로 변경합니다.

teamworvs14.gif

그림 14.  참조 속성 

.config 파일에 추가되는 항목은 다음과 같습니다.

<configuration>
    <appSettings>
        <add key="WinApp1.localhost.Service1" value="http://localhost/WebServiceTest/Service1.asmx" />
    </appSettings>
</configuration>
.config 파일에서 웹 서비스 URL을 읽을 수 있도록 웹 서비스 클라이언트 프록시의 생성자도 수정했습니다. 

같은 서버에 있지만 서로 다른 웹 서비스를 가리키는 두 웹 참조를 추가할 수 없음을 잘 알고 있어야 합니다. 이것은 IDE가 이미 있는 폴더 이름을 사용하여 두 번째 웹 참조를 만들려고 시도하기 때문입니다. 웹 참조가 파일 시스템에 표시되는 방법은 위의 설명을 참조하십시오.

이 문제는 사소한 문제입니다. 폴더 이름과 이름 공간 이름을 웹 서비스를 호스트하는 서버의 이름으로 남겨두지 않고 실제 서비스의 이름으로 변경합니다. 웹 참조를 마우스 오른쪽 단추로 클릭하고 Properties를 클릭한 다음 폴더 이름을 변경합니다.

Visual Studio .NET 베타 2 문제

프로젝트 파일 체크 아웃

프로젝트 파일은 변경해야 할 때마다 자동으로 체크 아웃됩니다. 이것은 프로젝트에 파일을 추가하거나 프로젝트 설정을 변경할 때 일반적으로 발생합니다. 그러나 수정한 후에는 프로젝트 파일이 체크 아웃되지 않는 경우도 있습니다. 일부 환경에서는 폼을 작성하고 편집하는 동안 프로젝트 파일을 체크 아웃하지 않아도 됩니다. 이것은 RTM에서 해결해야 할 알려진 버그입니다.

결국 팀 내의 개발자들 간에 프로젝트 파일에 대한 경합을 일으킬 수 있습니다. 팀 구성원들 간에 프로젝트 파일 체크 아웃 충돌 문제가 있으면 공유 체크 아웃으로 전환을 고려할 수 있습니다.

Solution Explorer에서 특수 문자 !는 해당 프로젝트 파일이 단독으로 체크 아웃되었음을 나타냅니다.

여러 솔루션에 있는 프로젝트

Visual SourceSafe 통합은 여러 솔루션의 일부인 프로젝트를 지원하지만 이 영역에는 버그가 하나 있습니다. Visual Studio .NET 베타 2를 사용할 때에는 지나칠 정도로 주의하여 각 프로젝트가 하나의 솔루션에만 속함을 확인하는 것이 좋습니다.

오프라인 작업

오프라인에서 작업할 때 잘 알고 있어야 할 많은 문제들이 있습니다. 주요 문제는 오프라인에서 작업하는 동안 파일을 성공적으로 체크 아웃하려면 경고 대화 상자가 표시되지 않게 해야 한다는 점입니다. 이 문제와 기타 문제들에 대해서는 위에서 이미 설명했습니다.

Visual SourceSafe에 없는 프로젝트

사소하게 느껴질 수 있지만 Visual SourceSafe에 없는 프로젝트가 있고 솔루션이 Visual SourceSafe에 있으면 해당 프로젝트와 파일들이 Visual SourceSafe에 없더라도 Solution Explorer에 체크 아웃된 것으로 표시됩니다. 체크 아웃된 특수 문자는 '로컬로 변경된' 항목 또는 Visual SourceSafe의 일시 보류된 추가 항목을 가리키는 것으로 이해할 수 있습니다. 체크 인 명령은 프로젝트 파일을 Visual SourceSafe에 추가합니다.

참조 제거

마찬가지로 큰 이슈는 아닙니다만, 비시스템 어셈블리에서 참조를 제거하면 IDE는 사용자 프로젝트 파일에 있는 참조 경로를 업데이트하지 않습니다. 어셈블리가 생성되는 실제 위치는 어셈블리가 더 이상 참조되지 않더라도 참조 경로에 남아 있습니다.

다중 프로젝트 솔루션 작성

각 프로젝트는 기본값인 자체 출력 디렉터리에 작성되어야 합니다. 일반적으로 프로젝트는 bin\debug 또는 bin\release 하위 디렉터리에 작성됩니다. 솔루션 내의 여러 프로젝트를 같은 디렉터리에 작성할 수는 없습니다.

또한 "Copy Local"은 같은 솔루션에서 생성 중인 모든 참조(같은 솔루션 내의 다른 프로젝트에서 참조하는 프로젝트 빌드 출력)에 대해 기본 값인 TRUE로 남아 있어야 합니다. 이것은 어셈블리 참조와 프로젝트 간 참조 모두에 적용됩니다.

요약

Visual Studio .NET 베타 2에서의 팀 작업은 Visual Studio .NET 베타 1에서보다 많이 향상되었습니다. 이제 모든 핵심 시나리오가 작동하고 대부분 매우 잘 작동합니다. 아직 릴리스 이전에 해결해야 할 일부 사소한 버그들이 남아 있긴 하지만 Visual SourceSafe 통합과 IDE의 변경 사항은 모두 개선된 팀 개발 환경을 참조합니다. 이제 개발자들 간에 프로젝트 파일과 소스 파일을 공유하기가 더 쉬워졌으며 응용 프로그램을 개발 환경에서 테스트 및 생산 환경으로 이동하기가 더 쉽습니다.

최종 수정일: 2001년 11월 6일

<원본: http://msdn.microsoft.com/library/Cc671602>

반응형

About

by 쑤기c

반응형