버전 관리란?
파일의 추가 및 수정 이력등을 관리하는 것을 의미한다.
프로젝트들의 규모가 커짐에 따라 개개인의 파일 버전 관리의 필요성이 대두 되기 시작하였다.
파일명으로 관리를 하면 복잡해지기도 하고, 해당 파일을 언제 어떻게 수정 되었는 지에 대한 정보도 알 수 없다.
버전 관리에는 누가 어느 저장소에, 어느 파일을, 언제, 무엇을이라는 개념이 필요하다.
시간 흐름에 따라 파일 또는 폴더에 대한 변경 사항을 추적하고 관리를 할 수 있어야한다.
필요하면 이전 버전으로 되돌리고, 변경 사항의 자세한 확인이 가능해야하고, 소스 내용의 충돌에 대한 철리와 언제 어떤 파일이 삭제되고 추가 되었는 지에 대한 확인, 여러 사용자에 대한 처리 등 여러가지로 버전 관리가 되어야하는 데, 그것을 해주는 것 중 하나가 GIT이다.
로컬 버전 관리 :다중 사용자 X, 원격 서버 X
중앙집중 버전 관리 : 다중 사용자 O, 원격 서버 O, but 원격 서버 문제시 복구 불가능
분산 버전 관릴 : 다중 사용자 O, 원격 서버 O, 서버 문제시 복구 가능, 주로 사용 되며, 로컬 저장소에서 커밋 등 수정하고 최종을 푸시
Git은 분산 버전 관리 시스템으로, 다중 사용자가 원격 서버와 로컬 서버를 가지고 버전 관리를 하며, 원격 서버가 문제를 일으킬 경우 복구가 가능하여 주로 사용 되는 시스템이다.
git을 이용하게 되면, 원격 저장소(Remote Repository)와 로컬 저장소(Local Repositry)를 이용하게 되며, 로컬 저장소에서 Add, Commit을 이용하여 버전을 관리를 하다가, 공동으로 작업하는 원격 저장소에 Push를 하여 이용한다.
Git의 작동 원리
1. Git add와 Working directory
개인의 작업 폴더에서 작업을 진행하고, git add라는 명령어를 통하여 Staging area에 올릴 수 있다.
2. Git commit과 Local Repository
Staging area에 있는 내용은 Git commit을 이용하여, Local Repository에 올릴 수 있다.
3. Git push와 Remote Repository
Local Repository에 있는 파일들을 git push를 통해 연결된 Remote Repository에 올릴 수 있다.
'CS > Git' 카테고리의 다른 글
[Git] Git 사용법 - Git, Commit, Push, Repository (1) | 2023.05.31 |
---|---|
[Git] 브랜치(branch) (0) | 2022.06.07 |
[Github] Github 사용하기 (0) | 2022.05.07 |