사고쳤어요
버전 관리 본문
버전
프로그램 또는 게임 등을 실행하면 작은 글씨로 ver 1.2.0, v 2.0 과 같이 버전이 적혀있는 것을 확인할 수 있다.
그리고 간혹 버전이 맞지 않거나 새로운 버전이 나오면 업데이트가 진행되고 버전이 맞춰지는 것을 볼 수 있다.
버전이란 어떤 프로그램을 수정, 개선하여 완성한 것으로 새로워질 때마다 번호를 늘려 나가는 것이다.
만약 버전 관리가 제대로 이루어지지 않는다면 다음과 같은 일이 벌어질 것이다.

위 사진에서 어떤 파일이 최종적으로 완성된 파일인지 알 수 없다.
이를 체계적으로 관리하기 위해서는 숫자를 통해 버전 관리가 필요하다.
1.0 -> 1.1 -> 1.2 -> 2.0 과 같은 방식으로 관리한다면 문서가 만들어지거나 수정된 시점을 명확히 알 수 있을 것이다.
개발에서의 버전 관리
프로젝트 협업을 하면서도 버전 관리는 매우 중요하다.
한 사람이 새로 작성하거나 수정한 코드는 다른 사람도 확인할 수 있어야 하고, 체계적으로 관리되어야 한다.
또 수정한 코드에 문제가 생겨 과거 버전으로 되돌려야 하는 경우도 생길 수 있다.
버전 관리에는 크게 3가지 종류가 존재한다.
1. 로컬 VCS
로컬형 버전관리시스템은 개인의 컴퓨터에서 버전을 관리하는 것을 말한다.
개인 컴퓨터에서만 관리가 가능하기 때문에 협업이 불가능하다.
2. 중앙집중식 VCS
중앙집중식 버전관리시스템은 중앙에 코드 저장의 역할을 하는 컴퓨터가 있어 해당 컴퓨터에 모든 코드를 저장하는 것이다.
그리고 수정하려는 파일만 중앙의 컴퓨터로부터 가져와 수정한 뒤 다시 중앙의 컴퓨터에 저장하면 된다.
덕분에 로컬 VCS에서는 불가능했던 협업이 가능하지만 문제점이 하나 있는데, 중앙집중식에서 여러 사람이 같은 파일을 수정하려고 할 때 문제가 발생한다.
누군가가 이미 수정을 해서 파일을 변경하였는데 해당 부분을 다른 사람이 수정하지 않은 버전으로 덮어씌울 수도 있고, 또다른 방법으로 수정한 버전으로 덮어씌울 수도 있다.
3. 분산 VCS
분산형 버전관리시스템 역시 마찬가지로 중앙에 저장의 역할을 하는 컴퓨터가 있다.
하지만 분산형은 코드 전체를 저장하고 있고, 수정을 할 때도 코드 전체를 받아와 수정하게 된다.
분산형에서는 코드 전체를 가져가 수정하고 업데이트하기 때문에 중앙집중식에서 있었던 문제점이 해결되고 보다 안정적이다.
이런 장점 때문에 가장 많이 사용하는 것이 분산 VCS인데 대표적으로 Git, Mecurial 등이 있다.
'깃' 카테고리의 다른 글
| 깃 브랜치 이름 규칙과 전략 (0) | 2025.01.24 |
|---|---|
| Git Clone과 Repository 연결 해제 (0) | 2025.01.23 |
| GIt Repository 생성 및 연결 (0) | 2025.01.23 |
| Git, Github와 Git 사용법 (0) | 2025.01.22 |
| 리드미 개념, 마크다운 작성법 (1) | 2025.01.21 |