형상관리 툴

씩씩한 조약돌·2023년 6월 15일
0

공부 기록✍️

목록 보기
25/37

사진출처 : https://youtu.be/EXUBmjGKm7E (착한코딩)


Git, SVN등 형상관리 툴 종류 및 특징

소프트웨어를 개발할 때 여러명이 함께 협업하여 하나의 산출물을 만들게 됩니다. 산출물에서 어떤 것이 변경되었고 수정되었고 새로 개발되었는지 추적하는 것을 형상관리라고 합니다.
형상관리툴을 이용하면 크게 3가지 장점이 있습니다.
여러명이 함께 협업한 후 코드를 합치기가 용이하고,
누가 어느의 소스코드를 작성했고, 어디를 수정했는지 확인할 수 있고,
버전으로 관리할 수 있기 때문에 잘못된 변경사항이 있으면 이전 시점으로 돌아갈 수 있습니다.

이런 형상관리툴은 크게 중앙집중식 모델과 분산모델 2가지 모델로 나뉩니다.

중앙집중식의 대표적인 툴
cvs
오픈소스 소프트웨어로 오랜시간 많은 유저들이 사용해 시스템이 안정적입니다.
중앙서버에 파일을 저장하고, 사용자가 checkout으로 파일 복사후 commit으로 변경사항을 저장할 수 있습니다.
파일 히스토리를 보존해서 과거 이력을 확인할 수 있는 장점이 있지만
commit중 오류가 발생하면 복구가 어렵고 속도가 느리다는 단점이 있습니다.

svn
cvs의 단점을 보완하기 위해 만들어진 중앙집중식 모델입니다.
중앙서버에 파일을 저장하고 커밋하는 경우 원본과 비교하여 다른 부분만 저장하는 방식입니다
중앙 저장소에서 프로젝트 관리의 모든 것을 처리하기 때문에 모든 사람이 중앙 서버에 있는 같은 자료를 받아오고, 한 사람이 변경사항을 반영하는 순간 모든 사람에게 공유되기 때문에 개개인의 버전관리는 할 수가 없습니다.

git은 대표적인 분산모델인데요
원격중앙서버와 개인피시의 로컬저장소 2곳에 보관하기 때문에 인터넷이 연결되지 않아도 로컬저장소에서 commit하여 안전하게 보관할 수 있다는 장점이 있습니다. 또 브랜치를 통해 여러버전으로 작업하여 관리할 수 있습니다.

profile
씩씩하게 공부중 (22.11~)

0개의 댓글