중앙집중관리식 형상관리 소스 관리 툴 ( 중앙 서버에 저장소가 있다 )
TortoiseSVN
| 용어 | 설명 |
|---|---|
| Trunk(메인 개발 라인) | 운영 중인 안정화된 버전의 소스가 보관되는 디렉터리 |
| 저장소(Repository) | 프로젝트의 모든 파일과 폴더, 그리고 이력을 저장하는 곳. |
| 모든 개발자가 중앙 서버에 접속하여 코드를 관리하고 업데이트함. | |
| 체크아웃(Checkout) | 저장소로부터 프로젝트의 최신 버전을 가져오는 것. |
| 개발자는 이를 통해 로컬에서 작업을 시작할 수 있음. | |
| 커밋(Commit) | 로컬에서의 작업을 저장소에 반영하는 것. |
| 변경된 파일을 저장소에 올리고 이를 이력에 추가함. | |
| 추가(Add) | 로컬 파일을 서브버전이 관리하는 파일로 등록하는 것. |
| 업데이트(Update) | 저장소의 최신 변경 사항을 로컬에 반영하는 것. |
| 다른 개발자가 커밋한 변경 사항을 가져와 로컬 작업 환경을 최신 상태로 유지함. | |
| —- | |
| 동일한 파일을 Repository와 Local에서 동시에 변경한 경우 서브버전에서 | |
| 자동으로 Merge 해주지만, | |
| 서브버전에서 Merge를 할 수 없을 경우 Conflict상태로 변경될 수 있다. | |
| 리비전(Revision) | 저장소에 커밋된 변경 사항. 각 리비전은 고유한 번호로 식별됨. |
| 브랜치(Branch) | 프로젝트의 복사본을 만들어 독립적으로 개발하는 것. |
| 주로 새로운 기능 개발이나 버그 수정을 위해 사용됨. | |
| 태그(Tag) | 특정 시점의 프로젝트 상태를 저장하는 데 사용됨. |
| 주로 릴리스 버전을 나타내는데 사용되며, 안정된 상태의 코드를 가리킴. | |
| 병합(Merge) | 두 개의 다른 브랜치나 태그를 합치는 것. |
| 주로 개발이 완료된 브랜치의 변경 사항을 메인 브랜치에 반영할 때 사용됨. | |
| 충돌(Conflict) | 병합 시 두 개 이상의 변경 사항이 충돌하는 경우. |
| 개발자는 충돌을 해결하여 병합을 완료해야 함. | |
| 속성(Properties) | 파일이나 폴더에 추가 정보를 저장하는데 사용됨. |
| 예를 들어, 파일의 실행 권한이나 MIME 타입 등을 저장할 수 있음. | |
| 잠금(Locking) | 다른 사용자가 해당 파일을 편집할 수 없도록 파일에 대한 변경을 제한하는 상태 |

Show log :
커밋 기록 보기
기존 코드와 현재 코드 비교도 여기서
Revert :
복구하기 reset
Clean up :
이력 정보가 잘못되어 오류가 발생하거나, update 명령어나 commit 명령어 사용 시 에러가 발생할 경우의 해결 방법
Relocate :
SVN 저장소의 URL을 변경
Add :
SVN에서 관리할 코드 추가

| 작업 | 설명 |
|---|---|
| 동기화 | |
| (Synchronize with Repository) | 서버에 있는 소스와 로컬 소스의 싱크를 맞춥니다. |
| 커밋(Commit) | 서버로 나의 로컬 소스를 올리는 작업입니다. |
| 업데이트(Update) | 서버의 소스를 나의 로컬로 옮기는 작업입니다. |
| 덮어쓰고 커밋 | |
| (Override and Commit) | 서버를 무시하고 로컬에 있는 파일을 서버에 덮어쓰는 작업입니다. |
| 덮어쓰고 업데이트 | |
| (Override and Update) | 로컬을 무시하고 서버에 있는 파일을 내 로컬로 덮어 쓰는 작업입니다. |
| 히스토리 보기(Show History) | 사람들이 업데이트 한 내역을 확인할 수 있습니다. |
| 어느 부분을 업데이트했고, 어떻게 했는지 상세하게 확인 가능합니다. | |
| 되돌리기(Revert) | 현재 작업했던 내용을 취소하고, 서버 소스로 모두 바꾸어줍니다. |