본문 바로가기
IT Study/개발 일기

[VS2010 Enterprise] Pending Changes, TFS 버전 관리

by dev_huhu 2021. 3. 23.
반응형

입사한 지 얼마 안됐는데 Visual Studio 2010 Enterprise를 사용하고 버전 관리는 TFS를 사용한다.
난 아직 혼자 책이나 자료 보면서 공부만 하느라 버전 관리는 안해봤는데
TFS의 사용법에 대해 인터넷에 검색해도 자료도 적고... 영어는 어렵다.
일단 부딫혀보며 같은 실수를 막는게 최선인 듯 하다.
나는 Visual Studio를 사용한 게 학교에서 사용해본 게 다라서
세세한 기능에 대해 잘 몰랐고 하나씩 배워나가는 중이다.


먼저 Pending Changes 라는 기능이 있다.
버전을 들고온 Local 에서 변경이 일어난 내역들이 표시된다.
내용을 원본과 동일하게 바꾼다고 하더라도 Pending Changes에서 내려오지 않으니, 가급적 불필요한 수정을 피하는게 나을 것 같다.
이렇게 Pending Changes에 내용들을 확인했다면 이 수정된 내용들을 어떻게 처리할 것인지 선택할 수 있다.
Check-In을 통해 서버에 적용시킬 수 있고... Shelve에 잠시 올려놓을 수도 있다. (Local의 Branch 같은 느낌인 듯)
Shelve set에 올려져있는 내용을 Unshelve를 클릭하여 다시 Local로 부를 수도 있다.


Pending Changes에서 변경 내역에 우클릭 후, Compare을 클릭하면 [With Unmodified Version] [With Workspace Version][With Last Version] 메뉴를 볼 수 있다.
Pending Changes 창에서 Conflict 탭에서 최신 소스 코드와 내 코드의 충돌 내역을 하나씩 Compare 했는데
여기서 [Server to Local], [Local to Original], [Server to Original] 이 3가지 메뉴를 접했다.
당연스럽게 [Server to Local]을 클릭하였고.. 내 의도대로 작동하지 않고 정답은 [Server to Original] 이었다.
여기서 Original이란 뭘까? 아직 제대로 개념을 잡지 못해서 답답하다.

++ 2021-05-19
Pending Change 등 Compare 할 때,
Server 는 말 그대로 서버의 최신 버전을 의미.
Original 은 내가 로컬로 받은 버전의 원본을 의미. 브랜치 개념으로 이해를 했다. (예를 들어, 최신 버전으로 받은 후 다른 사람들의 체크인으로 인해 최신이 아니게 됐을때 Server 버전과 Original 버전은 차이가 발생한다.)
Local 은 Original 버전이 수정된 지금의 로컬 상태를 의미.

반응형

댓글