VCS(Version Control System) : 버전 관리 시스템으로 파일 변화를 시간에 따라 기록하고 특정 시점의 버전을 다시 꺼내올 수 있는 시스템이다. 코드 뿐만 아니라 텍스트, 이미지 파일 등을 함께 관리할 수 있다.
VCS 이전에는 따로 폴더를 두어서 버전을 수동적으로 관리하여 저장하는 체계를 사용했으나 이를 해결하기 위해서 CVS, Subersion과 같은 Centralized Version Control과 같은 서버에 히스토리를 관리하면서 각각의 개발자들이 서버를 통해 동기화를 진행하였는데, 서버의 장애가 발생 시 각각의 개발자들의 작업에 모두 지장이 간다는 단점이 존재했다.
이를 해결하기 위해 Distributed version Control이 발전하게 되었다. 이는 각 개발자들이 히스토리 정보를 가지기 때문에 서버에 문제가 발생해도 각각의 개발자들은 동일한 히스토리를 가지고 있기 때문에 작업을 진행할 수 있다.
이 때 서버는 사설 서버나 github나 bitbucket과 같은 클라우드 서비스를 사용할 수 있다.
GiT
리눅스 커널의 개발을 위해 만들어진 형상관리 시스템으로 처리속도와 이력관리 그리고 이미 처리된 소스파일도 수정이 가능합니다. 기존의 delta-based시스템(버전별로 달라진 내용만 가짐)의 변경된 내용을 개선하는데 소요 시간이 많은 문제점을 해결하기위해 프로그램의 전체적인 내용을 스냅샷해서 가지고 있다. 따라서 버전들 사이에서 자유자제로 이동이 빠르고 오류가 없이 적용이된다. 또한 스냅샷은 변경되지 않은 내용의 파일은 링크의 형식으로 가져오기 때문에 상대적으로 가볍다.
Git 설치
1. Git공식 홈페이지에서 알맞은 운영체제로 설치 https://git-scm.com/downloads
2. 호스팅을 위한 UI 어플리케이션을 설치합니다 ( 셋 중 하나 설치 )
// 무조건 설치할 필요 없이 터미널을 이용해서 명령어를 사용해도 된다.
3. cmd창에서 git에 대한 정보를 업데이트 해줍니다.
유저 네임과 이메일 그리고 줄바꿈을 업데이트 해주었습니다.
core.aurocrlf는 윈도우의 줄바꿈 "\r\n"과 리눅스의 줄바꿈 "\n"을 호환시켜준다 => "\n"으로 통일
'Infra > GIT&GIT HUB' 카테고리의 다른 글
Git (6) : branch (0) | 2021.07.12 |
---|---|
Git (5) : Reset , Revert 기초 (0) | 2021.07.09 |
Git (4) : 버전관리 (0) | 2021.07.08 |
Git (3) : git 기본 명령어 (0) | 2021.06.30 |
Git (2) : git의 workflow (0) | 2021.06.30 |