Git 이란?
- 형상 관리 도구 중 하나
- Git은 소프트웨어를 개발하는 기업의 핵심 자산인 소스 코드를 효과적으로 관리할 수 있게 해주는 무료 공개 소프트웨어
- SVN보다 여러 장점이 있어 SVN을 쓰던 개발 조직들은 하나 둘씩 Git으로 갈아타고 있다.
SVN과 Git의 차이점
Git이 SVN과 다른 점은 분산형 관리 시스템이라는 것이다.
- SVN : 중앙 서버에 소스 코드와 히스토리를 저장한다.
- Git : 소스 코드를 여러 개발 PC와 저장소에 분산해서 저장한다.
즉 Git은 중앙 서버에 장애가 발생해도 로컬 저장소에 커밋을 할 수 있으며, 로컬 저장소들을 이용하여 중앙 저장소의 복원도 가능하다.
사본을 로컬에서 관리하기 때문에 Git이 SVN에 비해 훨씬 빠르다.
SVN은 변경 로그 하나 보는 것도 인터넷을 경유해야 한다 :(
Git 의 장점
- 소스 코드를 주고 받을 필요 없이, 같은 파일을 여러 명이 동시에 작업하는 병렬 개발이 가능하다.
- 즉 브랜치를 통해 개발한 뒤, 본 프로그램에 합치는 방식(Merge)으로 개발을 진행할 수 있다.
- 팀 플젝이 아니라, 개인 프로젝트일지라도 Git을 통해 버전 관리를 하면 체계적인 개발이 가능해지고, 프로그램이나 패치를 배포하는 과정도 간단해진다. (pull로 업데이트, patch 파일 배포)
Git 기초 용어
-
git commit :
- 현재 변경된 작업 상태를 점검을 마치면 확정하고 저장소에 저장하는 작업,
- 의미있는 수정 작업이 끝났을 때 마침을 알리는 작업
-
git pull :
- 리모트 저장소의 변경된 내용을 로컬 저장소에 적용하는 작업을 pull이라 한다.
-
git push :
- 로컬 저장소에 커밋된 내용을 리모트 저장소에 올리는 작업을 push라고 한다.
-
git clone :
- 리모트 저장소에 있는 레포지토리를 로컬 환경으로 복제해올 때 사용한다.
Ref.
https://git-scm.com/book/ko/v2
https://goddaehee.tistory.com/91