Microsoft MVP성태의 닷넷 이야기
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 
(연관된 글이 2개 있습니다.)

형상 관리 서버 운영을 대신해 주는 Visual Studio 온라인 서비스

예전에 TFS 호스팅 서비스에 대해 잠깐씩 소개해 드린 적이 있는데요.

마이크로소프트가 직접 운영하는 TFS 호스팅 서비스 (Preview 단계)
; https://www.sysnet.pe.kr/1/0/991

마이크로소프트 TFS 호스팅 서비스 - Preview
; https://www.sysnet.pe.kr/2/0/1188

꾸준한 업그레이드를 하면서 어느새 "Visual Studio Online"이라는 서비스로 발전을 하게 되었습니다.

Visual Studio Online
; http://www.visualstudio.com/en-us/products/visual-studio-online-overview-vs

실제로 사이트의 설명에 보면 "Team Foundation Service"의 이름이 바뀐 것이라고 하고 있습니다.

5명의 개발자가 동시 협업하는 소규모 프로젝트에 대해서는 무료이고 추가에 대해서도 상당히 저렴한 비용이 듭니다. 사실 저도 TFS 서버를 구성해 봐서 느끼는 것이지만 개발자가 형상관리 서버까지 함께 관리하는 것이 은근히 시간을 많이 잡아먹는 작업임에는 틀림없습니다. 따라서 복잡하게 형상관리 서버를 운영하기 보다는 소규모 팀이라면 Visual Studio Online서비스를 이용하는 것도 좋을 것 같습니다.

어디 한번 해볼까요? ^^




번거롭게 온라인 사이트 방문없이 Visual Studio 2013을 통해 바로 서비스를 생성하는 방법으로 살펴보겠습니다. 2013을 실행하면 우측 상단에 "Sign in" 버튼을 눌러 윈도우 라이브 계정으로 로그인합니다.

vs_online_1.png

그럼, 다음과 같이 상세 정보 및 "visualstudio.com"에 사용될 주소를 입력받는 창이 나오고 적절하게 입력해 주시면 됩니다.

vs_online_2.png

이제 실제로 자신이 입력한 정보(위의 경우 "https://techsharer.visualstudio.com")에 해당하는 사이트로 접속해 보면 자신만의 Visual Studio Online 공간이 생긴 것을 확인할 수 있습니다.




처음 "https://techsharer.visualstudio.com/" 사이트를 접속하는 경우, 다음과 같이 프로젝트 생성을 묻습니다.

vs_online_3.png

실습한다며 덤빈 것이라서 막상 뭘 만들어야 할지 모르겠군요. ^^ 암튼 아무 이름이나 주고 만들면 다음과 같이 우리가 잘 아는 Team Project와 유사한 구성으로 온라인 상에서 프로젝트를 진행하게 됩니다.

vs_online_4.png

위의 화면 상단의 "Open with Visual Studio to connect" 버튼을 누르거나 우측 하단의 "Open in Visual Studio" 링크를 눌러 보면, 파일 다운로드 창 비슷한게 뜨고 진행을 계속하면 곧바로 Visual Studio 2013이 "Visual Studio Online"에서 만든 프로젝트와 연결되어 실행됩니다. (해보지는 않았지만 설명에서 보는 것처럼 XCode와 Eclipse와의 연동도 지원한다고 합니다.)

그럼, "Team Explorer"에서 "Configure your workspace" 링크를 눌러 현재 컴퓨터에 작업 공간을 하나 매핑시키면 모든 설정이 끝이 납니다.

vs_online_5.png

이제부터는 여느 TFS Team project 사용하는 방법과 완전히 동일하게 사용할 수 있습니다. 솔루션 만들고, 프로젝트 추가하면 소스제어 및 작업항목 관리, 빌드, 테스트까지 모두 Visual Studio Online 서비스와 연동됩니다.

형상관리... 참 쉽죠~~~! ^^




참고로, 하나의 윈도우 로그인 계정에서 Visual Studio 2013을 여러 개의 온라인 계정으로 사용하는 것이 아직 문제가 있습니다. 실습을 위해 한 계정으로 하다가 다른 계정으로 로그인을 하려니까 다음과 같은 오류가 발생했는데요.

We were unable to establish the connection because it is configured for user ... but you attempted to connect using user .... To connect as a different user perform a switch user operation. To connect with the configured identity just attempt the last operation again.


이에 대해서는 다음의 글에서 해결책이 제시되고 있습니다.

How can I switch my signed in user in Visual Studio 2013?
; http://stackoverflow.com/questions/19517673/how-can-i-switch-my-signed-in-user-in-visual-studio-2013

따라서, 다음과 같이 개발 환경을 리셋해 주어야 합니다.

  1. Close Visual Studio
  2. Start the Developer Command prompt installed with Visual Studio as an administrator.
  3. type 'devenv /resetuserdata'
  4. Start Visual Studio Normally

글쎄요. 위의 조건이 수정될지는 모르겠지만 이런 방식은 아무래도 불편하지 않을까 싶습니다. 오히려 운영체제에 계정 하나 더 만들어서 로그인 계정을 스위치하는 것이 더 편할 것 같습니다.




[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]

[연관 글]






[최초 등록일: ]
[최종 수정일: 7/1/2021]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 




1  2  3  4  5  6  7  [8]  9  10  11  12  13  14  15  ...
NoWriterDateCnt.TitleFile(s)
13434정성태11/1/20232722스크립트: 62. 파이썬 - class의 정적 함수를 동적으로 교체
13433정성태11/1/20232447스크립트: 61. 파이썬 - 함수 오버로딩 미지원
13432정성태10/31/20232530오류 유형: 878. 탐색기의 WSL 디렉터리 접근 시 "Attempt to access invalid address." 오류 발생
13431정성태10/31/20232888스크립트: 60. 파이썬 - 비동기 FastAPI 앱을 gunicorn으로 호스팅
13430정성태10/30/20232733닷넷: 2153. C# - 사용자가 빌드한 ICU dll 파일을 사용하는 방법
13429정성태10/27/20233012닷넷: 2152. Win32 Interop - C/C++ DLL로부터 이중 포인터 버퍼를 C#으로 받는 예제파일 다운로드1
13428정성태10/25/20233089닷넷: 2151. C# 12 - ref readonly 매개변수
13427정성태10/18/20233296닷넷: 2150. C# 12 - 정적 문맥에서 인스턴스 멤버에 대한 nameof 접근 허용(Allow nameof to always access instance members from static context)
13426정성태10/13/20233458스크립트: 59. 파이썬 - 비동기 호출 함수(run_until_complete, run_in_executor, create_task, run_in_threadpool)
13425정성태10/11/20233231닷넷: 2149. C# - PLinq의 Partitioner<T>를 이용한 사용자 정의 분할파일 다운로드1
13423정성태10/6/20233210스크립트: 58. 파이썬 - async/await 기본 사용법
13422정성태10/5/20233349닷넷: 2148. C# - async 유무에 따른 awaitable 메서드의 병렬 및 예외 처리
13421정성태10/4/20233425닷넷: 2147. C# - 비동기 메서드의 async 예약어 유무에 따른 차이
13420정성태9/26/20235651스크립트: 57. 파이썬 - UnboundLocalError: cannot access local variable '...' where it is not associated with a value
13419정성태9/25/20233256스크립트: 56. 파이썬 - RuntimeError: dictionary changed size during iteration
13418정성태9/25/20233944닷넷: 2146. C# - ConcurrentDictionary 자료 구조의 동기화 방식
13417정성태9/19/20233482닷넷: 2145. C# - 제네릭의 형식 매개변수에 속한 (매개변수를 가진) 생성자를 호출하는 방법
13416정성태9/19/20233284오류 유형: 877. redis-py - MISCONF Redis is configured to save RDB snapshots, ...
13415정성태9/18/20233782닷넷: 2144. C# 12 - 컬렉션 식(Collection Expressions)
13414정성태9/16/20233551디버깅 기술: 193. Windbg - ThreadStatic 필드 값을 조사하는 방법
13413정성태9/14/20233736닷넷: 2143. C# - 시스템 Time Zone 변경 시 이벤트 알림을 받는 방법
13412정성태9/14/20237031닷넷: 2142. C# 12 - 인라인 배열(Inline Arrays) [1]
13411정성태9/12/20233527Windows: 252. 권한 상승 전/후 따로 관리되는 공유 네트워크 드라이브 정보
13410정성태9/11/20235066닷넷: 2141. C# 12 - Interceptor (컴파일 시에 메서드 호출 재작성) [1]
13409정성태9/8/20233909닷넷: 2140. C# - Win32 API를 이용한 모니터 전원 끄기
13408정성태9/5/20233873Windows: 251. 임의로 만든 EXE 파일을 포함한 ZIP 파일의 압축을 해제할 때 Windows Defender에 의해 삭제되는 경우
1  2  3  4  5  6  7  [8]  9  10  11  12  13  14  15  ...